[INFO] fetching crate lightning 0.0.118...
[INFO] checking lightning-0.0.118 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate lightning 0.0.118 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate lightning 0.0.118 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate lightning 0.0.118
[INFO] finished tweaking crates.io crate lightning 0.0.118
[INFO] tweaked toml for crates.io crate lightning 0.0.118 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded core2 v0.3.3
[INFO] [stderr]   Downloaded bitcoin v0.29.2
[INFO] [stderr]   Downloaded bitcoinconsensus v0.20.2-0.5.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 028c84f4f9ccaa2cc1f5834a5e92e6719c0ed3ea7ada5b94c3042ff57656f7dd
[INFO] running `Command { std: "docker" "start" "-a" "028c84f4f9ccaa2cc1f5834a5e92e6719c0ed3ea7ada5b94c3042ff57656f7dd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "028c84f4f9ccaa2cc1f5834a5e92e6719c0ed3ea7ada5b94c3042ff57656f7dd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "028c84f4f9ccaa2cc1f5834a5e92e6719c0ed3ea7ada5b94c3042ff57656f7dd", kill_on_drop: false }`
[INFO] [stdout] 028c84f4f9ccaa2cc1f5834a5e92e6719c0ed3ea7ada5b94c3042ff57656f7dd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 94b04298bd7ecd1cde11ce8b8bbb03811f1cb636248bb6499de63090832a3e44
[INFO] running `Command { std: "docker" "start" "-a" "94b04298bd7ecd1cde11ce8b8bbb03811f1cb636248bb6499de63090832a3e44", kill_on_drop: false }`
[INFO] [stderr]    Compiling secp256k1-sys v0.6.1
[INFO] [stderr]    Compiling bitcoinconsensus v0.20.2-0.5.0
[INFO] [stderr]     Checking bitcoin_hashes v0.11.0
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]     Checking regex-syntax v0.8.2
[INFO] [stderr]     Checking bech32 v0.9.1
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking aho-corasick v1.1.2
[INFO] [stderr]     Checking regex-automata v0.4.5
[INFO] [stderr]     Checking secp256k1 v0.24.3
[INFO] [stderr]     Checking regex v1.10.3
[INFO] [stderr]     Checking bitcoin v0.29.2
[INFO] [stderr]     Checking lightning v0.0.118 (/opt/rustwide/workdir)
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]     --> src/ln/channelmanager.rs:1418:8
[INFO] [stdout]      |
[INFO] [stdout] 1418 | #[deny(const_err)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]     --> src/ln/channelmanager.rs:1424:8
[INFO] [stdout]      |
[INFO] [stdout] 1424 | #[deny(const_err)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]     --> src/ln/peer_handler.rs:2407:9
[INFO] [stdout]      |
[INFO] [stdout] 2407 |     #[deny(const_err)]
[INFO] [stdout]      |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]     --> src/ln/channelmanager.rs:1418:8
[INFO] [stdout]      |
[INFO] [stdout] 1418 | #[deny(const_err)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]     --> src/ln/channelmanager.rs:1424:8
[INFO] [stdout]      |
[INFO] [stdout] 1424 | #[deny(const_err)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]     --> src/ln/peer_handler.rs:2407:9
[INFO] [stdout]      |
[INFO] [stdout] 2407 |     #[deny(const_err)]
[INFO] [stdout]      |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `lightning` (lib test); 3 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/158f00a1c5175648af6f6099b075f78d1d014a28/bin/rustc --crate-name lightning --edition=2018 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 --test --cfg 'feature="default"' --cfg 'feature="grind_signatures"' --cfg 'feature="std"' -C metadata=42284c1873b1e07d -C extra-filename=-42284c1873b1e07d --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern bitcoin=/opt/rustwide/target/debug/deps/libbitcoin-f3447666c24a5cd9.rmeta --extern hex=/opt/rustwide/target/debug/deps/libhex-4993bc98e929487d.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-39f6c510d972be27.rmeta --cap-lints=forbid -L native=/opt/rustwide/target/debug/build/bitcoinconsensus-492dfb5b76ae0253/out -L native=/opt/rustwide/target/debug/build/secp256k1-sys-00596944a7741719/out` (signal: 9, SIGKILL: kill)
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `lightning` (lib); 3 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/158f00a1c5175648af6f6099b075f78d1d014a28/bin/rustc --crate-name lightning --edition=2018 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 --cfg 'feature="default"' --cfg 'feature="grind_signatures"' --cfg 'feature="std"' -C metadata=63739db4ed3642f6 -C extra-filename=-63739db4ed3642f6 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern bitcoin=/opt/rustwide/target/debug/deps/libbitcoin-f3447666c24a5cd9.rmeta --cap-lints=forbid -L native=/opt/rustwide/target/debug/build/bitcoinconsensus-492dfb5b76ae0253/out -L native=/opt/rustwide/target/debug/build/secp256k1-sys-00596944a7741719/out` (signal: 9, SIGKILL: kill)
[INFO] running `Command { std: "docker" "inspect" "94b04298bd7ecd1cde11ce8b8bbb03811f1cb636248bb6499de63090832a3e44", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "94b04298bd7ecd1cde11ce8b8bbb03811f1cb636248bb6499de63090832a3e44", kill_on_drop: false }`
[INFO] [stdout] 94b04298bd7ecd1cde11ce8b8bbb03811f1cb636248bb6499de63090832a3e44
[INFO] checking lightning-0.0.118 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate lightning 0.0.118 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate lightning 0.0.118 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate lightning 0.0.118
[INFO] finished tweaking crates.io crate lightning 0.0.118
[INFO] tweaked toml for crates.io crate lightning 0.0.118 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8e9947f019bbc5340c63fd2cf4a462544529a1422e0a8780e017be5aa04be0ba
[INFO] running `Command { std: "docker" "start" "-a" "8e9947f019bbc5340c63fd2cf4a462544529a1422e0a8780e017be5aa04be0ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8e9947f019bbc5340c63fd2cf4a462544529a1422e0a8780e017be5aa04be0ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8e9947f019bbc5340c63fd2cf4a462544529a1422e0a8780e017be5aa04be0ba", kill_on_drop: false }`
[INFO] [stdout] 8e9947f019bbc5340c63fd2cf4a462544529a1422e0a8780e017be5aa04be0ba
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c941d8def54715b2b9e937306cf86e862b924e43ca7114b81d3ce3ed32b29458
[INFO] running `Command { std: "docker" "start" "-a" "c941d8def54715b2b9e937306cf86e862b924e43ca7114b81d3ce3ed32b29458", kill_on_drop: false }`
[INFO] [stderr]    Compiling secp256k1-sys v0.6.1
[INFO] [stderr]    Compiling bitcoinconsensus v0.20.2-0.5.0
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]     Checking bitcoin_hashes v0.11.0
[INFO] [stderr]     Checking bech32 v0.9.1
[INFO] [stderr]     Checking regex-syntax v0.8.2
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking aho-corasick v1.1.2
[INFO] [stderr]     Checking regex-automata v0.4.5
[INFO] [stderr]     Checking secp256k1 v0.24.3
[INFO] [stderr]     Checking regex v1.10.3
[INFO] [stderr]     Checking bitcoin v0.29.2
[INFO] [stderr]     Checking lightning v0.0.118 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:146:35
[INFO] [stdout]     |
[INFO] [stdout] 146 |             match self.read.read(&mut dest[0..(read_len as usize)]) {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 514 | impl_writeable_primitive!(u128, 16);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 514 | impl_writeable_primitive!(u128, 16);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 514 | impl_writeable_primitive!(u128, 16);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 514 | impl_writeable_primitive!(u128, 16);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 515 | impl_writeable_primitive!(u64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 515 | impl_writeable_primitive!(u64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 515 | impl_writeable_primitive!(u64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 515 | impl_writeable_primitive!(u64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 516 | impl_writeable_primitive!(u32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 516 | impl_writeable_primitive!(u32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 516 | impl_writeable_primitive!(u32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 516 | impl_writeable_primitive!(u32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 517 | impl_writeable_primitive!(u16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 517 | impl_writeable_primitive!(u16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 517 | impl_writeable_primitive!(u16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 517 | impl_writeable_primitive!(u16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 518 | impl_writeable_primitive!(i64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 518 | impl_writeable_primitive!(i64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 518 | impl_writeable_primitive!(i64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 518 | impl_writeable_primitive!(i64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 519 | impl_writeable_primitive!(i32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 519 | impl_writeable_primitive!(i32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 519 | impl_writeable_primitive!(i32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 519 | impl_writeable_primitive!(i32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 520 | impl_writeable_primitive!(i16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 520 | impl_writeable_primitive!(i16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 520 | impl_writeable_primitive!(i16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 520 | impl_writeable_primitive!(i16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 521 | impl_writeable_primitive!(i8, 1);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 521 | impl_writeable_primitive!(i8, 1);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 521 | impl_writeable_primitive!(i8, 1);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 521 | impl_writeable_primitive!(i8, 1);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 588 | impl_array!(3, u8); // for rgb, ISO 4712 code
[INFO] [stdout]     | ------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 588 | impl_array!(3, u8); // for rgb, ISO 4712 code
[INFO] [stdout]     | ------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 589 | impl_array!(4, u8); // for IPv4
[INFO] [stdout]     | ------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 589 | impl_array!(4, u8); // for IPv4
[INFO] [stdout]     | ------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 590 | impl_array!(12, u8); // for OnionV2
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 590 | impl_array!(12, u8); // for OnionV2
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 591 | impl_array!(16, u8); // for IPv6
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 591 | impl_array!(16, u8); // for IPv6
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 592 | impl_array!(32, u8); // for channel id & hmac
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 592 | impl_array!(32, u8); // for channel id & hmac
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 593 | impl_array!(PUBLIC_KEY_SIZE, u8); // for PublicKey
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 593 | impl_array!(PUBLIC_KEY_SIZE, u8); // for PublicKey
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 594 | impl_array!(64, u8); // for ecdsa::Signature and schnorr::Signature
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 594 | impl_array!(64, u8); // for ecdsa::Signature and schnorr::Signature
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 595 | impl_array!(66, u8); // for MuSig2 nonces
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 595 | impl_array!(66, u8); // for MuSig2 nonces
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 596 | impl_array!(1300, u8); // for OnionPacket.hop_data
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 596 | impl_array!(1300, u8); // for OnionPacket.hop_data
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 598 | impl_array!(8, u16);
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 598 | impl_array!(8, u16);
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 599 | impl_array!(32, u16);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 599 | impl_array!(32, u16);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:729:14
[INFO] [stdout]     |
[INFO] [stdout] 729 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 744 | impl_for_map!(BTreeMap, Ord, |_| BTreeMap::new());
[INFO] [stdout]     | ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_for_map` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:729:14
[INFO] [stdout]     |
[INFO] [stdout] 729 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 745 | impl_for_map!(HashMap, Hash, |len| HashMap::with_capacity(len));
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_for_map` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:768:12
[INFO] [stdout]     |
[INFO] [stdout] 768 |         for _ in 0..len.0 {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:833:26
[INFO] [stdout]     |
[INFO] [stdout] 833 |             r.read_exact(&mut ret[readstart..])?;
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:799:14
[INFO] [stdout]     |
[INFO] [stdout] 799 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 840 | impl_for_vec!(ecdsa::Signature);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_readable_for_vec` which comes from the expansion of the macro `impl_for_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:799:14
[INFO] [stdout]     |
[INFO] [stdout] 799 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 841 | impl_for_vec!(crate::chain::channelmonitor::ChannelMonitorUpdate);
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_readable_for_vec` which comes from the expansion of the macro `impl_for_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:799:14
[INFO] [stdout]     |
[INFO] [stdout] 799 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 842 | impl_for_vec!(crate::ln::channelmanager::MonitorUpdateCompletionAction);
[INFO] [stdout]     | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_readable_for_vec` which comes from the expansion of the macro `impl_for_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:799:14
[INFO] [stdout]     |
[INFO] [stdout] 799 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 843 | impl_for_vec!((A, B), A, B);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_readable_for_vec` which comes from the expansion of the macro `impl_for_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:799:14
[INFO] [stdout]     |
[INFO] [stdout] 799 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 845 | impl_readable_for_vec!(crate::routing::router::BlindedTail);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_readable_for_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:864:12
[INFO] [stdout]     |
[INFO] [stdout] 864 |         for _ in 0..num_witnesses {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/util/message_signing.rs:44:22
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let rsig = &sig_rec[1..];
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/util/persist.rs:661:23
[INFO] [stdout]     |
[INFO] [stdout] 661 |                     for update_id in start..=end {
[INFO] [stdout]     |                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/base32.rs:55:15
[INFO] [stdout]    |
[INFO] [stdout] 55 |                     for i in output_length..len {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/base32.rs:151:22
[INFO] [stdout]     |
[INFO] [stdout] 151 |         for c in ret.drain(output_length..) {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/chacha20.rs:62:30
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 u32::from_le_bytes(bytes[0*4..1*4].try_into().expect("len is 4")),
[INFO] [stdout]    |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/chacha20.rs:63:30
[INFO] [stdout]    |
[INFO] [stdout] 63 |                 u32::from_le_bytes(bytes[1*4..2*4].try_into().expect("len is 4")),
[INFO] [stdout]    |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/chacha20.rs:64:30
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 u32::from_le_bytes(bytes[2*4..3*4].try_into().expect("len is 4")),
[INFO] [stdout]    |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/chacha20.rs:65:30
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 u32::from_le_bytes(bytes[3*4..4*4].try_into().expect("len is 4")),
[INFO] [stdout]    |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:171:13
[INFO] [stdout]     |
[INFO] [stdout] 171 |             for i in 0..dest.len() {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:181:13
[INFO] [stdout]     |
[INFO] [stdout] 181 |             for i in 0..bytes.len() {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:193:36
[INFO] [stdout]     |
[INFO] [stdout] 193 |                 a: u32x4::from_bytes(&constant[0..16]),
[INFO] [stdout]     |                                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:194:31
[INFO] [stdout]     |
[INFO] [stdout] 194 |                 b: u32x4::from_bytes(&key[0..16]),
[INFO] [stdout]     |                                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:196:29
[INFO] [stdout]     |
[INFO] [stdout] 196 |                     u32x4::from_bytes(&key[0..16])
[INFO] [stdout]     |                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:198:29
[INFO] [stdout]     |
[INFO] [stdout] 198 |                     u32x4::from_bytes(&key[16..32])
[INFO] [stdout]     |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:201:31
[INFO] [stdout]     |
[INFO] [stdout] 201 |                     u32x4::from_bytes(&nonce[0..16])
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:204:13
[INFO] [stdout]     |
[INFO] [stdout] 204 |                     nonce4[4..].copy_from_slice(nonce);
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:208:13
[INFO] [stdout]     |
[INFO] [stdout] 208 |                     nonce4[8..].copy_from_slice(nonce);
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:218:13
[INFO] [stdout]     |
[INFO] [stdout] 218 |             for _ in 0..10 {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             for i in 0..lens.len() {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 229 |             state_to_buffer!(state, self.output);
[INFO] [stdout]     |             ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `state_to_buffer` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |                 $output[i*4..(i+1)*4].copy_from_slice(&lens[i].to_le_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 229 |             state_to_buffer!(state, self.output);
[INFO] [stdout]     |             ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `state_to_buffer` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:261:14
[INFO] [stdout]     |
[INFO] [stdout] 261 |                 for j in 0..count {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:284:14
[INFO] [stdout]     |
[INFO] [stdout] 284 |                 for j in 0..count {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:346:43
[INFO] [stdout]     |
[INFO] [stdout] 346 |             self.chacha.process_in_place(&mut dest[0..res]);
[INFO] [stdout]     |                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:29:40
[INFO] [stdout]    |
[INFO] [stdout] 29 |         poly.r[0] = (u32::from_le_bytes(key[ 0.. 4].try_into().expect("len is 4"))     ) & 0x3ffffff;
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:30:40
[INFO] [stdout]    |
[INFO] [stdout] 30 |         poly.r[1] = (u32::from_le_bytes(key[ 3.. 7].try_into().expect("len is 4")) >> 2) & 0x3ffff03;
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:31:40
[INFO] [stdout]    |
[INFO] [stdout] 31 |         poly.r[2] = (u32::from_le_bytes(key[ 6..10].try_into().expect("len is 4")) >> 4) & 0x3ffc0ff;
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:32:40
[INFO] [stdout]    |
[INFO] [stdout] 32 |         poly.r[3] = (u32::from_le_bytes(key[ 9..13].try_into().expect("len is 4")) >> 6) & 0x3f03fff;
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:33:39
[INFO] [stdout]    |
[INFO] [stdout] 33 |         poly.r[4] = (u32::from_le_bytes(key[12..16].try_into().expect("len is 4")) >> 8) & 0x00fffff;
[INFO] [stdout]    |                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:35:40
[INFO] [stdout]    |
[INFO] [stdout] 35 |         poly.pad[0] = u32::from_le_bytes(key[16..20].try_into().expect("len is 4"));
[INFO] [stdout]    |                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:36:40
[INFO] [stdout]    |
[INFO] [stdout] 36 |         poly.pad[1] = u32::from_le_bytes(key[20..24].try_into().expect("len is 4"));
[INFO] [stdout]    |                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:37:40
[INFO] [stdout]    |
[INFO] [stdout] 37 |         poly.pad[2] = u32::from_le_bytes(key[24..28].try_into().expect("len is 4"));
[INFO] [stdout]    |                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:38:40
[INFO] [stdout]    |
[INFO] [stdout] 38 |         poly.pad[3] = u32::from_le_bytes(key[28..32].try_into().expect("len is 4"));
[INFO] [stdout]    |                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:64:32
[INFO] [stdout]    |
[INFO] [stdout] 64 |         h0 += (u32::from_le_bytes(m[ 0.. 4].try_into().expect("len is 4"))     ) & 0x3ffffff;
[INFO] [stdout]    |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:65:32
[INFO] [stdout]    |
[INFO] [stdout] 65 |         h1 += (u32::from_le_bytes(m[ 3.. 7].try_into().expect("len is 4")) >> 2) & 0x3ffffff;
[INFO] [stdout]    |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:66:32
[INFO] [stdout]    |
[INFO] [stdout] 66 |         h2 += (u32::from_le_bytes(m[ 6..10].try_into().expect("len is 4")) >> 4) & 0x3ffffff;
[INFO] [stdout]    |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:67:32
[INFO] [stdout]    |
[INFO] [stdout] 67 |         h3 += (u32::from_le_bytes(m[ 9..13].try_into().expect("len is 4")) >> 6) & 0x3ffffff;
[INFO] [stdout]    |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:68:31
[INFO] [stdout]    |
[INFO] [stdout] 68 |         h4 += (u32::from_le_bytes(m[12..16].try_into().expect("len is 4")) >> 8) | hibit;
[INFO] [stdout]    |                                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |             for i in self.leftover+1..16 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:166:13
[INFO] [stdout]     |
[INFO] [stdout] 166 |             for i in 0..want {
[INFO] [stdout]     |                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:169:11
[INFO] [stdout]     |
[INFO] [stdout] 169 |             m = &m[want..];
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:184:18
[INFO] [stdout]     |
[INFO] [stdout] 184 |             self.block(&m[0..16]);
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:185:11
[INFO] [stdout]     |
[INFO] [stdout] 185 |             m = &m[16..];
[INFO] [stdout]     |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:188:12
[INFO] [stdout]     |
[INFO] [stdout] 188 |         for i in 0..m.len() {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:199:10
[INFO] [stdout]     |
[INFO] [stdout] 199 |         output[0..4].copy_from_slice(&self.h[0].to_le_bytes());
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:200:10
[INFO] [stdout]     |
[INFO] [stdout] 200 |         output[4..8].copy_from_slice(&self.h[1].to_le_bytes());
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:201:10
[INFO] [stdout]     |
[INFO] [stdout] 201 |         output[8..12].copy_from_slice(&self.h[2].to_le_bytes());
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:202:10
[INFO] [stdout]     |
[INFO] [stdout] 202 |         output[12..16].copy_from_slice(&self.h[3].to_le_bytes());
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/chacha20poly1305rfc.rs:36:24
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 mac.input(&[0; 16][0..16 - (len % 16)]);
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/util/chacha20poly1305rfc.rs:46:47
[INFO] [stdout]    |
[INFO] [stdout] 46 |             let mut cipher = ChaCha20::new(key, &nonce[4..]);
[INFO] [stdout]    |                                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20poly1305rfc.rs:171:43
[INFO] [stdout]     |
[INFO] [stdout] 171 |             self.chacha.decrypt_in_place(&mut dest[0..res]);
[INFO] [stdout]     |                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/chacha20poly1305rfc.rs:191:59
[INFO] [stdout]     |
[INFO] [stdout] 191 |             let bytes_written = (&mut write_buffer[..]).write(&src[src_idx..]).expect("In-memory writes can't fail");
[INFO] [stdout]     |                                                                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/scid_utils.rs:123:58
[INFO] [stdout]     |
[INFO] [stdout] 123 |             let rand_for_tx_index = u32::from_be_bytes(rand_bytes[4..8].try_into().unwrap());
[INFO] [stdout]     |                                                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/scid_utils.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 136 |             salt[0..4].copy_from_slice(&block_height_bytes);
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/scid_utils.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |             salt[4..8].copy_from_slice(&tx_index_bytes);
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/indexed_map.rs:129:27
[INFO] [stdout]     |
[INFO] [stdout] 129 |             inner_range: self.keys[start..end].iter(),
[INFO] [stdout]     |                                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/channelmonitor.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 119 |         for _ in 0..len {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/channelmonitor.rs:301:14
[INFO] [stdout]     |
[INFO] [stdout] 301 |             for _  in 0..per_htlc_len {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/channelmonitor.rs:304:14
[INFO] [stdout]     |
[INFO] [stdout] 304 |                 for _ in 0..htlcs_count {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4238:27
[INFO] [stdout]      |
[INFO] [stdout] 4238 |                 if second_point_slice[0..32] == [0; 32] && second_point_slice[32] == 0 {
[INFO] [stdout]      |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4268:12
[INFO] [stdout]      |
[INFO] [stdout] 4268 |         for _ in 0..counterparty_claimable_outpoints_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4272:13
[INFO] [stdout]      |
[INFO] [stdout] 4272 |             for _ in 0..htlcs_count {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4282:12
[INFO] [stdout]      |
[INFO] [stdout] 4282 |         for _ in 0..counterparty_commitment_txn_on_chain_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4292:12
[INFO] [stdout]      |
[INFO] [stdout] 4292 |         for _ in 0..counterparty_hash_commitment_number_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4315:12
[INFO] [stdout]      |
[INFO] [stdout] 4315 |         for _ in 0..payment_preimages_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4326:12
[INFO] [stdout]      |
[INFO] [stdout] 4326 |         for _ in 0..pending_monitor_events_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4337:12
[INFO] [stdout]      |
[INFO] [stdout] 4337 |         for _ in 0..pending_events_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4347:12
[INFO] [stdout]      |
[INFO] [stdout] 4347 |         for _ in 0..waiting_threshold_conf_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4355:12
[INFO] [stdout]      |
[INFO] [stdout] 4355 |         for _ in 0..outputs_to_watch_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4359:13
[INFO] [stdout]      |
[INFO] [stdout] 4359 |             for _ in 0..outputs_len {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:136:14
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 for _ in 0..vlen {
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:368:31
[INFO] [stdout]     |
[INFO] [stdout] 368 |             let read_slice = &mut data[0..bytes_to_read];
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:378:12
[INFO] [stdout]     |
[INFO] [stdout] 378 |         for _ in 0..pending_claim_requests_len {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:384:12
[INFO] [stdout]     |
[INFO] [stdout] 384 |         for _ in 0..claimable_outpoints_len {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:393:12
[INFO] [stdout]     |
[INFO] [stdout] 393 |         for _ in 0..locktimed_packages_len {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:397:13
[INFO] [stdout]     |
[INFO] [stdout] 397 |             for _ in 0..packages_len {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:405:12
[INFO] [stdout]     |
[INFO] [stdout] 405 |         for _ in 0..waiting_threshold_conf_len {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/package.rs:1070:12
[INFO] [stdout]      |
[INFO] [stdout] 1070 |         for _ in 0..inputs_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]     --> src/ln/channelmanager.rs:1418:8
[INFO] [stdout]      |
[INFO] [stdout] 1418 | #[deny(const_err)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]     --> src/ln/channelmanager.rs:1424:8
[INFO] [stdout]      |
[INFO] [stdout] 1424 | #[deny(const_err)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channelmanager.rs:9750:12
[INFO] [stdout]      |
[INFO] [stdout] 9750 |         for _ in 0..len {
[INFO] [stdout]      |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channelmanager.rs:9939:12
[INFO] [stdout]      |
[INFO] [stdout] 9939 |         for _ in 0..channel_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10064:12
[INFO] [stdout]       |
[INFO] [stdout] 10064 |         for _ in 0..forward_htlcs_count {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10068:13
[INFO] [stdout]       |
[INFO] [stdout] 10068 |             for _ in 0..pending_forwards_count {
[INFO] [stdout]       |                      ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10076:12
[INFO] [stdout]       |
[INFO] [stdout] 10076 |         for _ in 0..claimable_htlcs_count {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10080:13
[INFO] [stdout]       |
[INFO] [stdout] 10080 |             for _ in 0..previous_hops_len {
[INFO] [stdout]       |                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10101:12
[INFO] [stdout]       |
[INFO] [stdout] 10101 |         for _ in 0..peer_count {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10112:12
[INFO] [stdout]       |
[INFO] [stdout] 10112 |         for _ in 0..event_count {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10120:12
[INFO] [stdout]       |
[INFO] [stdout] 10120 |         for _ in 0..background_event_count {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10138:12
[INFO] [stdout]       |
[INFO] [stdout] 10138 |         for _ in 0..pending_inbound_payment_count {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10147:12
[INFO] [stdout]       |
[INFO] [stdout] 10147 |         for _ in 0..pending_outbound_payments_count_compat {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/inbound_payment.rs:165:28
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let expiry_bytes = &bytes[AMT_MSAT_LEN..];
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/inbound_payment.rs:277:17
[INFO] [stdout]     |
[INFO] [stdout] 277 |     metadata_bytes[AMT_MSAT_LEN..].copy_from_slice(&expiry_bytes);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/inbound_payment.rs:340:47
[INFO] [stdout]     |
[INFO] [stdout] 340 |     expiry_bytes.copy_from_slice(&metadata_bytes[AMT_MSAT_LEN..]);
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/msgs.rs:1012:41
[INFO] [stdout]      |
[INFO] [stdout] 1012 |         ed25519_pubkey.copy_from_slice(&onion[3..35]);
[INFO] [stdout]      |                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ln/msgs.rs:1063:23
[INFO] [stdout]      |
[INFO] [stdout] 1063 |                 let port: u16 = s[trimmed_input + 1..].parse().map_err(|_| SocketAddressParseError::InvalidPort)?;
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ln/msgs.rs:2546:42
[INFO] [stdout]      |
[INFO] [stdout] 2546 |             r.read_exact(&mut excess_address_data[if excess { 1 } else { 0 }..])?;
[INFO] [stdout]      |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/msgs.rs:2599:12
[INFO] [stdout]      |
[INFO] [stdout] 2599 |         for _ in 0..short_channel_id_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/msgs.rs:2678:12
[INFO] [stdout]      |
[INFO] [stdout] 2678 |         for _ in 0..short_channel_id_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ln/peer_handler.rs:1164:29
[INFO] [stdout]      |
[INFO] [stdout] 1164 |             let pending = &next_buff[peer.pending_outbound_buffer_first_msg_offset..];
[INFO] [stdout]      |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/peer_handler.rs:1328:32
[INFO] [stdout]      |
[INFO] [stdout] 1328 | ...   peer.pending_read_buffer[peer.pending_read_buffer_pos..peer.pending_read_buffer_pos + data_to_copy].copy_from_slice(&data[read_pos....
[INFO] [stdout]      |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/peer_handler.rs:1328:129
[INFO] [stdout]      |
[INFO] [stdout] 1328 | ..._buffer_pos + data_to_copy].copy_from_slice(&data[read_pos..read_pos + data_to_copy]);
[INFO] [stdout]      |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]     --> src/ln/peer_handler.rs:2407:9
[INFO] [stdout]      |
[INFO] [stdout] 2407 |     #[deny(const_err)]
[INFO] [stdout]      |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/chan_utils.rs:173:11
[INFO] [stdout]     |
[INFO] [stdout] 173 |     for i in 0..48 {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/chan_utils.rs:257:12
[INFO] [stdout]     |
[INFO] [stdout] 257 |         for i in 0..48 {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/chan_utils.rs:281:12
[INFO] [stdout]     |
[INFO] [stdout] 281 |         for i in 0..bits {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/chan_utils.rs:295:12
[INFO] [stdout]     |
[INFO] [stdout] 295 |         for i in 0..pos {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/chan_utils.rs:311:12
[INFO] [stdout]     |
[INFO] [stdout] 311 |         for i in 0..self.old_secrets.len() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/features.rs:525:13
[INFO] [stdout]     |
[INFO] [stdout] 525 |         for i in (0..len).rev() {
[INFO] [stdout]     |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         nonce[4..].copy_from_slice(&n.to_le_bytes()[..]);
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:151:38
[INFO] [stdout]     |
[INFO] [stdout] 151 |         chacha.encrypt(plaintext, &mut res[0..plaintext.len()], &mut tag);
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:152:7
[INFO] [stdout]     |
[INFO] [stdout] 152 |         res[plaintext.len()..].copy_from_slice(&tag);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 160 |         nonce[4..].copy_from_slice(&n.to_le_bytes()[..]);
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:164:49
[INFO] [stdout]     |
[INFO] [stdout] 164 |         chacha.encrypt_full_message_in_place(&mut res[offset..], &mut tag);
[INFO] [stdout]     |                                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:171:9
[INFO] [stdout]     |
[INFO] [stdout] 171 |         nonce[4..].copy_from_slice(&n.to_le_bytes()[..]);
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:174:34
[INFO] [stdout]     |
[INFO] [stdout] 174 |         if !chacha.decrypt(&cyphertext[0..cyphertext.len() - 16], res, &cyphertext[cyphertext.len() - 16..]) {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:174:78
[INFO] [stdout]     |
[INFO] [stdout] 174 |         if !chacha.decrypt(&cyphertext[0..cyphertext.len() - 16], res, &cyphertext[cyphertext.len() - 16..]) {
[INFO] [stdout]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:200:7
[INFO] [stdout]     |
[INFO] [stdout] 200 |         res[1..34].copy_from_slice(&our_pub.serialize()[..]);
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:201:50
[INFO] [stdout]     |
[INFO] [stdout] 201 |         PeerChannelEncryptor::encrypt_with_ad(&mut res[34..], 0, &temp_k, &state.h, &[0; 0]);
[INFO] [stdout]     |                                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:205:18
[INFO] [stdout]     |
[INFO] [stdout] 205 |         sha.input(&res[34..]);
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:221:52
[INFO] [stdout]     |
[INFO] [stdout] 221 |         let their_pub = match PublicKey::from_slice(&act[1..34]) {
[INFO] [stdout]     |                                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:222:83
[INFO] [stdout]     |
[INFO] [stdout] 222 | ...   Err(_) => return Err(LightningError{err: format!("Invalid public key {}", &act[1..34].to_hex()), action: msgs::ErrorAction::Disconn...
[INFO] [stdout]     |                                                                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:243:78
[INFO] [stdout]     |
[INFO] [stdout] 243 |         PeerChannelEncryptor::decrypt_with_ad(&mut dec, 0, &temp_k, &state.h, &act[34..])?;
[INFO] [stdout]     |                                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:247:18
[INFO] [stdout]     |
[INFO] [stdout] 247 |         sha.input(&act[34..]);
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:325:54
[INFO] [stdout]     |
[INFO] [stdout] 325 |                         PeerChannelEncryptor::encrypt_with_ad(&mut res[1..50], 1, &temp_k2, &bidirectional_state.h, &our_node...
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:329:22
[INFO] [stdout]     |
[INFO] [stdout] 329 |                         sha.input(&res[1..50]);
[INFO] [stdout]     |                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:338:54
[INFO] [stdout]     |
[INFO] [stdout] 338 |                         PeerChannelEncryptor::encrypt_with_ad(&mut res[50..], 0, &temp_k, &bidirectional_state.h, &[0; 0]);
[INFO] [stdout]     |                                                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:378:122
[INFO] [stdout]     |
[INFO] [stdout] 378 |                         PeerChannelEncryptor::decrypt_with_ad(&mut their_node_id, 1, &temp_k2.unwrap(), &bidirectional_state.h,...
[INFO] [stdout]     |                                                                                                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:386:28
[INFO] [stdout]     |
[INFO] [stdout] 386 |                         sha.input(&act_three[1..50]);
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:392:105
[INFO] [stdout]     |
[INFO] [stdout] 392 |                         PeerChannelEncryptor::decrypt_with_ad(&mut [0; 0], 0, &temp_k, &bidirectional_state.h, &act_three[50..])?;
[INFO] [stdout]     |                                                                                                                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:433:36
[INFO] [stdout]     |
[INFO] [stdout] 433 |                 Self::encrypt_with_ad(&mut res[0..16+2], *sn, sk, &[0; 0], &(msg.len() as u16).to_be_bytes());
[INFO] [stdout]     |                                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:436:36
[INFO] [stdout]     |
[INFO] [stdout] 436 |                 Self::encrypt_with_ad(&mut res[16+2..], *sn, sk, &[0; 0], msg);
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:469:38
[INFO] [stdout]     |
[INFO] [stdout] 469 |                 Self::encrypt_with_ad(&mut res.0[0..16+2], *sn, sk, &[0; 0], &(msg_len as u16).to_be_bytes());
[INFO] [stdout]     |                                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:6946:15
[INFO] [stdout]      |
[INFO] [stdout] 6946 |                     for _ in 0..idx { pending_outbound_skimmed_fees.push(None); }
[INFO] [stdout]      |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:6971:17
[INFO] [stdout]      |
[INFO] [stdout] 6971 | ...                   for _ in 0..idx { holding_cell_skimmed_fees.push(None); }
[INFO] [stdout]      |                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7192:32
[INFO] [stdout]      |
[INFO] [stdout] 7192 |                 let read_slice = &mut data[0..cmp::min(1024, keys_len as usize - keys_data.as_ref().unwrap().len())];
[INFO] [stdout]      |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7212:12
[INFO] [stdout]      |
[INFO] [stdout] 7212 |         for _ in 0..pending_inbound_htlc_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7230:12
[INFO] [stdout]      |
[INFO] [stdout] 7230 |         for _ in 0..pending_outbound_htlc_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7260:12
[INFO] [stdout]      |
[INFO] [stdout] 7260 |         for _ in 0..holding_cell_htlc_update_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7294:12
[INFO] [stdout]      |
[INFO] [stdout] 7294 |         for _ in 0..monitor_pending_forwards_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7300:12
[INFO] [stdout]      |
[INFO] [stdout] 7300 |         for _ in 0..monitor_pending_failures_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:247:12
[INFO] [stdout]     |
[INFO] [stdout] 247 |     for i in (amt..arr.len()).rev() {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:250:11
[INFO] [stdout]     |
[INFO] [stdout] 250 |     for i in 0..amt {
[INFO] [stdout]     |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:327:13
[INFO] [stdout]     |
[INFO] [stdout] 327 |             for _ in 0..(packet_data.len() - pos) { // TODO: Batch this.
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:352:15
[INFO] [stdout]     |
[INFO] [stdout] 352 |         packet_data[0..payload_len.0].copy_from_slice(&payload.encode()[..]);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:353:15
[INFO] [stdout]     |
[INFO] [stdout] 353 |         packet_data[payload_len.0..(payload_len.0 + 32)].copy_from_slice(&hmac_res);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:361:16
[INFO] [stdout]     |
[INFO] [stdout] 361 |             packet_data[start_index..stop_index].copy_from_slice(&filler[..]);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:414:30
[INFO] [stdout]     |
[INFO] [stdout] 414 |     hmac.input(&packet.encode()[32..]);
[INFO] [stdout]     |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:521:35
[INFO] [stdout]     |
[INFO] [stdout] 521 |         hmac.input(&err_packet.encode()[32..]);
[INFO] [stdout]     |                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:524:58
[INFO] [stdout]     |
[INFO] [stdout] 524 |         let error_code_slice = match err_packet.failuremsg.get(0..2) {
[INFO] [stdout]     |                                                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:543:49
[INFO] [stdout]     |
[INFO] [stdout] 543 |         error_packet_ret = Some(err_packet.failuremsg[2..].to_vec());
[INFO] [stdout]     |                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:581:62
[INFO] [stdout]     |
[INFO] [stdout] 581 |             if let Some(update_len_slice) = err_packet.failuremsg.get(debug_field_size+2..debug_field_size+4) {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:583:63
[INFO] [stdout]     |
[INFO] [stdout] 583 |                 if let Some(mut update_slice) = err_packet.failuremsg.get(debug_field_size + 4..debug_field_size + 4 + update_len) {
[INFO] [stdout]     |                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:593:48
[INFO] [stdout]     |
[INFO] [stdout] 593 |                     if update_slice.len() > 2 && update_slice[0..2] == msgs::ChannelUpdate::TYPE.to_be_bytes() {
[INFO] [stdout]     |                                                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:594:36
[INFO] [stdout]     |
[INFO] [stdout] 594 |                         update_slice = &update_slice[2..];
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:696:151
[INFO] [stdout]     |
[INFO] [stdout] 696 | ...or_code, debug_field, log_bytes!(&err_packet.failuremsg[4..4+debug_field_size]), description);
[INFO] [stdout]     |                                                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:787:61
[INFO] [stdout]     |
[INFO] [stdout] 787 |             debug_assert_eq!(data.len() - 2, u16::from_be_bytes(data[0..2].try_into().unwrap()) as usize) }
[INFO] [stdout]     |                                                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:792:65
[INFO] [stdout]     |
[INFO] [stdout] 792 |             debug_assert_eq!(data.len() - 2 - 8, u16::from_be_bytes(data[8..10].try_into().unwrap()) as usize) }
[INFO] [stdout]     |                                                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:794:65
[INFO] [stdout]     |
[INFO] [stdout] 794 |             debug_assert_eq!(data.len() - 2 - 8, u16::from_be_bytes(data[8..10].try_into().unwrap()) as usize) }
[INFO] [stdout]     |                                                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:796:65
[INFO] [stdout]     |
[INFO] [stdout] 796 |             debug_assert_eq!(data.len() - 2 - 4, u16::from_be_bytes(data[4..6].try_into().unwrap()) as usize) }
[INFO] [stdout]     |                                                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:798:61
[INFO] [stdout]     |
[INFO] [stdout] 798 |             debug_assert_eq!(data.len() - 2, u16::from_be_bytes(data[0..2].try_into().unwrap()) as usize) }
[INFO] [stdout]     |                                                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:803:65
[INFO] [stdout]     |
[INFO] [stdout] 803 |             debug_assert_eq!(data.len() - 2 - 2, u16::from_be_bytes(data[2..4].try_into().unwrap()) as usize) }
[INFO] [stdout]     |                                                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ln/onion_utils.rs:1012:74
[INFO] [stdout]      |
[INFO] [stdout] 1012 |                 chacha_stream.chacha.process_in_place(&mut new_packet_bytes.as_mut()[read_pos..]);
[INFO] [stdout]      |                                                                                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/outbound_payment.rs:1036:17
[INFO] [stdout]      |
[INFO] [stdout] 1036 | ...                   for _ in 0..route.paths.len() {
[INFO] [stdout]      |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/outbound_payment.rs:1258:12
[INFO] [stdout]      |
[INFO] [stdout] 1258 |         for _ in 0..route.paths.len() {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ln/outbound_payment.rs:1765:11
[INFO] [stdout]      |
[INFO] [stdout] 1765 |     preimage[32..].copy_from_slice(&payment_id.0);
[INFO] [stdout]      |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/offer.rs:805:55
[INFO] [stdout]     |
[INFO] [stdout] 805 | pub(super) const OFFER_TYPES: core::ops::Range<u64> = 1..80;
[INFO] [stdout]     |                                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/offers/invoice.rs:1084:52
[INFO] [stdout]      |
[INFO] [stdout] 1084 | tlv_stream!(InvoiceTlvStream, InvoiceTlvStreamRef, 160..240, {
[INFO] [stdout]      |                                                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/invoice_request.rs:795:65
[INFO] [stdout]     |
[INFO] [stdout] 795 | pub(super) const INVOICE_REQUEST_TYPES: core::ops::Range<u64> = 80..160;
[INFO] [stdout]     |                                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/offers/merkle.rs:22:57
[INFO] [stdout]    |
[INFO] [stdout] 22 | const SIGNATURE_TYPES: core::ops::RangeInclusive<u64> = 240..=1000;
[INFO] [stdout]    |                                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:130:15
[INFO] [stdout]     |
[INFO] [stdout] 130 |     for level in 0.. {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:137:24
[INFO] [stdout]     |
[INFO] [stdout] 137 |         let left_branches = (0..num_leaves).step_by(step);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:138:25
[INFO] [stdout]     |
[INFO] [stdout] 138 |         let right_branches = (offset..num_leaves).step_by(step);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:222:42
[INFO] [stdout]     |
[INFO] [stdout] 222 |             let type_bytes = &self.data.get_ref()[start as usize..offset as usize];
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:228:38
[INFO] [stdout]     |
[INFO] [stdout] 228 |             let _value = &self.data.get_ref()[offset as usize..end as usize];
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:229:44
[INFO] [stdout]     |
[INFO] [stdout] 229 |             let record_bytes = &self.data.get_ref()[start as usize..end as usize];
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/offers/payer.rs:31:48
[INFO] [stdout]    |
[INFO] [stdout] 31 | tlv_stream!(PayerTlvStream, PayerTlvStreamRef, 0..1, {
[INFO] [stdout]    |                                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/offers/signer.rs:247:13
[INFO] [stdout]     |
[INFO] [stdout] 247 |         &metadata[PaymentId::LENGTH..], expanded_key, iv_bytes, tlv_stream
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/offers/signer.rs:253:13
[INFO] [stdout]     |
[INFO] [stdout] 253 |         &metadata[PaymentId::LENGTH..], Hmac::from_engine(hmac), signing_pubkey, secp_ctx
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/offers/signer.rs:256:40
[INFO] [stdout]     |
[INFO] [stdout] 256 |     let nonce = Nonce::try_from(&metadata[PaymentId::LENGTH..][..Nonce::LENGTH]).unwrap();
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/offers/signer.rs:293:21
[INFO] [stdout]     |
[INFO] [stdout] 293 |     } else if metadata[Nonce::LENGTH..].len() == Sha256::LEN {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/offers/signer.rs:294:30
[INFO] [stdout]     |
[INFO] [stdout] 294 |         if fixed_time_eq(&metadata[Nonce::LENGTH..], &hmac.into_inner()) {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/routing/gossip.rs:460:39
[INFO] [stdout]     |
[INFO] [stdout] 460 |         for (_, ref chan) in channels.range(starting_point..) {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/gossip.rs:648:39
[INFO] [stdout]     |
[INFO] [stdout] 648 |         for (_, ref chan) in channels.range(inclusive_start_scid.unwrap()..exclusive_end_scid.unwrap()) {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/gossip.rs:1316:12
[INFO] [stdout]      |
[INFO] [stdout] 1316 |         for _ in 0..channels_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/gossip.rs:1323:12
[INFO] [stdout]      |
[INFO] [stdout] 1323 |         for _ in 0..nodes_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/router.rs:400:16
[INFO] [stdout]     |
[INFO] [stdout] 400 |                         for _ in 0..idx {
[INFO] [stdout]     |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/router.rs:427:12
[INFO] [stdout]     |
[INFO] [stdout] 427 |         for _ in 0..path_count {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/router.rs:430:13
[INFO] [stdout]     |
[INFO] [stdout] 430 |             for _ in 0..hop_count {
[INFO] [stdout]     |                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/router.rs:924:12
[INFO] [stdout]     |
[INFO] [stdout] 924 |         for _ in 0..hop_count {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:1270:13
[INFO] [stdout]      |
[INFO] [stdout] 1270 |         for i in (0..self.hops.len()).rev() {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:2561:13
[INFO] [stdout]      |
[INFO] [stdout] 2561 |     for idx in 0..(selected_route.len() - 1) {
[INFO] [stdout]      |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:2686:21
[INFO] [stdout]      |
[INFO] [stdout] 2686 |         for random_hop in 0..random_walk_length {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:2772:13
[INFO] [stdout]      |
[INFO] [stdout] 2772 |             for i in 0..self.hop_ids.len() {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:2799:11
[INFO] [stdout]      |
[INFO] [stdout] 2799 |     for i in 0..hops.len() {
[INFO] [stdout]      |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/scoring.rs:1804:17
[INFO] [stdout]      |
[INFO] [stdout] 1804 |         for bucket in 0..32 {
[INFO] [stdout]      |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/scoring.rs:1875:14
[INFO] [stdout]      |
[INFO] [stdout] 1875 |                 for i in start..end {
[INFO] [stdout]      |                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/sign/mod.rs:1544:43
[INFO] [stdout]      |
[INFO] [stdout] 1544 |         let chan_id = u64::from_be_bytes(params[0..8].try_into().unwrap());
[INFO] [stdout]      |                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/sign/mod.rs:1779:6
[INFO] [stdout]      |
[INFO] [stdout] 1779 |         id[0..4].copy_from_slice(&(child_idx as u32).to_be_bytes());
[INFO] [stdout]      |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/sign/mod.rs:1780:6
[INFO] [stdout]      |
[INFO] [stdout] 1780 |         id[4..8].copy_from_slice(&self.starting_time_nanos.to_be_bytes());
[INFO] [stdout]      |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/sign/mod.rs:1781:6
[INFO] [stdout]      |
[INFO] [stdout] 1781 |         id[8..16].copy_from_slice(&self.starting_time_secs.to_be_bytes());
[INFO] [stdout]      |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/sign/mod.rs:1782:6
[INFO] [stdout]      |
[INFO] [stdout] 1782 |         id[16..32].copy_from_slice(&user_channel_id.to_be_bytes());
[INFO] [stdout]      |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/blinded_path/mod.rs:146:12
[INFO] [stdout]     |
[INFO] [stdout] 146 |         for _ in 0..num_hops {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:146:35
[INFO] [stdout]     |
[INFO] [stdout] 146 |             match self.read.read(&mut dest[0..(read_len as usize)]) {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 514 | impl_writeable_primitive!(u128, 16);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 514 | impl_writeable_primitive!(u128, 16);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 514 | impl_writeable_primitive!(u128, 16);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 514 | impl_writeable_primitive!(u128, 16);
[INFO] [stdout]     | ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 515 | impl_writeable_primitive!(u64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 515 | impl_writeable_primitive!(u64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 515 | impl_writeable_primitive!(u64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 515 | impl_writeable_primitive!(u64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 516 | impl_writeable_primitive!(u32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 516 | impl_writeable_primitive!(u32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 516 | impl_writeable_primitive!(u32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 516 | impl_writeable_primitive!(u32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 517 | impl_writeable_primitive!(u16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 517 | impl_writeable_primitive!(u16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 517 | impl_writeable_primitive!(u16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 517 | impl_writeable_primitive!(u16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 518 | impl_writeable_primitive!(i64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 518 | impl_writeable_primitive!(i64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 518 | impl_writeable_primitive!(i64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 518 | impl_writeable_primitive!(i64, 8);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 519 | impl_writeable_primitive!(i32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 519 | impl_writeable_primitive!(i32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 519 | impl_writeable_primitive!(i32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 519 | impl_writeable_primitive!(i32, 4);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 520 | impl_writeable_primitive!(i16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 520 | impl_writeable_primitive!(i16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 520 | impl_writeable_primitive!(i16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 520 | impl_writeable_primitive!(i16, 2);
[INFO] [stdout]     | --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:471:44
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 writer.write_all(&self.0.to_be_bytes()[(self.0.leading_zeros()/8) as usize..$len])
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 521 | impl_writeable_primitive!(i8, 1);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:490:49
[INFO] [stdout]     |
[INFO] [stdout] 490 |                 let mut read_len = reader.read(&mut buf[$len..])?;
[INFO] [stdout]     |                                                             ^^
[INFO] [stdout] ...
[INFO] [stdout] 521 | impl_writeable_primitive!(i8, 1);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:493:38
[INFO] [stdout]     |
[INFO] [stdout] 493 |                     read_len = reader.read(&mut buf[($len + total_read_len)..])?;
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 521 | impl_writeable_primitive!(i8, 1);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:499:33
[INFO] [stdout]     |
[INFO] [stdout] 499 |                     bytes.copy_from_slice(&buf[first_byte..first_byte + $len]);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 521 | impl_writeable_primitive!(i8, 1);
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_writeable_primitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 588 | impl_array!(3, u8); // for rgb, ISO 4712 code
[INFO] [stdout]     | ------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 588 | impl_array!(3, u8); // for rgb, ISO 4712 code
[INFO] [stdout]     | ------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 589 | impl_array!(4, u8); // for IPv4
[INFO] [stdout]     | ------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 589 | impl_array!(4, u8); // for IPv4
[INFO] [stdout]     | ------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 590 | impl_array!(12, u8); // for OnionV2
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 590 | impl_array!(12, u8); // for OnionV2
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 591 | impl_array!(16, u8); // for IPv6
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 591 | impl_array!(16, u8); // for IPv6
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 592 | impl_array!(32, u8); // for channel id & hmac
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 592 | impl_array!(32, u8); // for channel id & hmac
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 593 | impl_array!(PUBLIC_KEY_SIZE, u8); // for PublicKey
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 593 | impl_array!(PUBLIC_KEY_SIZE, u8); // for PublicKey
[INFO] [stdout]     | -------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 594 | impl_array!(64, u8); // for ecdsa::Signature and schnorr::Signature
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 594 | impl_array!(64, u8); // for ecdsa::Signature and schnorr::Signature
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 595 | impl_array!(66, u8); // for MuSig2 nonces
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 595 | impl_array!(66, u8); // for MuSig2 nonces
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 596 | impl_array!(1300, u8); // for OnionPacket.hop_data
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 596 | impl_array!(1300, u8); // for OnionPacket.hop_data
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 598 | impl_array!(8, u16);
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 598 | impl_array!(8, u16);
[INFO] [stdout]     | ------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:564:10
[INFO] [stdout]     |
[INFO] [stdout] 564 |                     out[startpos..startpos + core::mem::size_of::<$ty>()].copy_from_slice(&v.to_be_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 599 | impl_array!(32, u16);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:579:31
[INFO] [stdout]     |
[INFO] [stdout] 579 |                     arr.copy_from_slice(&buf[startpos..startpos + core::mem::size_of::<$ty>()]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 599 | impl_array!(32, u16);
[INFO] [stdout]     | -------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:729:14
[INFO] [stdout]     |
[INFO] [stdout] 729 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 744 | impl_for_map!(BTreeMap, Ord, |_| BTreeMap::new());
[INFO] [stdout]     | ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_for_map` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:729:14
[INFO] [stdout]     |
[INFO] [stdout] 729 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 745 | impl_for_map!(HashMap, Hash, |len| HashMap::with_capacity(len));
[INFO] [stdout]     | --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_for_map` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:768:12
[INFO] [stdout]     |
[INFO] [stdout] 768 |         for _ in 0..len.0 {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/ser.rs:833:26
[INFO] [stdout]     |
[INFO] [stdout] 833 |             r.read_exact(&mut ret[readstart..])?;
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:799:14
[INFO] [stdout]     |
[INFO] [stdout] 799 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 840 | impl_for_vec!(ecdsa::Signature);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_readable_for_vec` which comes from the expansion of the macro `impl_for_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:799:14
[INFO] [stdout]     |
[INFO] [stdout] 799 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 841 | impl_for_vec!(crate::chain::channelmonitor::ChannelMonitorUpdate);
[INFO] [stdout]     | ----------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_readable_for_vec` which comes from the expansion of the macro `impl_for_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:799:14
[INFO] [stdout]     |
[INFO] [stdout] 799 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 842 | impl_for_vec!(crate::ln::channelmanager::MonitorUpdateCompletionAction);
[INFO] [stdout]     | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_readable_for_vec` which comes from the expansion of the macro `impl_for_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:799:14
[INFO] [stdout]     |
[INFO] [stdout] 799 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 843 | impl_for_vec!((A, B), A, B);
[INFO] [stdout]     | --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_readable_for_vec` which comes from the expansion of the macro `impl_for_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:799:14
[INFO] [stdout]     |
[INFO] [stdout] 799 |                 for _ in 0..len.0 {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 845 | impl_readable_for_vec!(crate::routing::router::BlindedTail);
[INFO] [stdout]     | ----------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_readable_for_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/ser.rs:864:12
[INFO] [stdout]     |
[INFO] [stdout] 864 |         for _ in 0..num_witnesses {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]     --> src/util/ser.rs:1487:12
[INFO] [stdout]      |
[INFO] [stdout] 1487 |         for i in 0..=7 {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]     --> src/util/ser.rs:1506:12
[INFO] [stdout]      |
[INFO] [stdout] 1506 |         for i in 0..=9 {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/util/message_signing.rs:44:22
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let rsig = &sig_rec[1..];
[INFO] [stdout]    |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]    --> src/util/persist.rs:661:23
[INFO] [stdout]     |
[INFO] [stdout] 661 |                     for update_id in start..=end {
[INFO] [stdout]     |                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]     --> src/util/persist.rs:1004:12
[INFO] [stdout]      |
[INFO] [stdout] 1004 |         for i in 3..=test_max_pending_updates * 2 {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/base32.rs:55:15
[INFO] [stdout]    |
[INFO] [stdout] 55 |                     for i in output_length..len {
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/base32.rs:151:22
[INFO] [stdout]     |
[INFO] [stdout] 151 |         for c in ret.drain(output_length..) {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base32.rs:253:12
[INFO] [stdout]     |
[INFO] [stdout] 253 |         for i in 1..6 {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base32.rs:255:6
[INFO] [stdout]     |
[INFO] [stdout] 255 |                 (0..(i as u8)).collect::<Vec<u8>>().as_ref()
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base32.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |             for j in 0..(num_padding[i % 5]) {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/base32.rs:261:13
[INFO] [stdout]     |
[INFO] [stdout] 261 |             for j in 0..(8 - num_padding[i % 5]) {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/chacha20.rs:62:30
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 u32::from_le_bytes(bytes[0*4..1*4].try_into().expect("len is 4")),
[INFO] [stdout]    |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/chacha20.rs:63:30
[INFO] [stdout]    |
[INFO] [stdout] 63 |                 u32::from_le_bytes(bytes[1*4..2*4].try_into().expect("len is 4")),
[INFO] [stdout]    |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/chacha20.rs:64:30
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 u32::from_le_bytes(bytes[2*4..3*4].try_into().expect("len is 4")),
[INFO] [stdout]    |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/chacha20.rs:65:30
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 u32::from_le_bytes(bytes[3*4..4*4].try_into().expect("len is 4")),
[INFO] [stdout]    |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:171:13
[INFO] [stdout]     |
[INFO] [stdout] 171 |             for i in 0..dest.len() {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:181:13
[INFO] [stdout]     |
[INFO] [stdout] 181 |             for i in 0..bytes.len() {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:193:36
[INFO] [stdout]     |
[INFO] [stdout] 193 |                 a: u32x4::from_bytes(&constant[0..16]),
[INFO] [stdout]     |                                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:194:31
[INFO] [stdout]     |
[INFO] [stdout] 194 |                 b: u32x4::from_bytes(&key[0..16]),
[INFO] [stdout]     |                                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:196:29
[INFO] [stdout]     |
[INFO] [stdout] 196 |                     u32x4::from_bytes(&key[0..16])
[INFO] [stdout]     |                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:198:29
[INFO] [stdout]     |
[INFO] [stdout] 198 |                     u32x4::from_bytes(&key[16..32])
[INFO] [stdout]     |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:201:31
[INFO] [stdout]     |
[INFO] [stdout] 201 |                     u32x4::from_bytes(&nonce[0..16])
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:204:13
[INFO] [stdout]     |
[INFO] [stdout] 204 |                     nonce4[4..].copy_from_slice(nonce);
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:208:13
[INFO] [stdout]     |
[INFO] [stdout] 208 |                     nonce4[8..].copy_from_slice(nonce);
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:218:13
[INFO] [stdout]     |
[INFO] [stdout] 218 |             for _ in 0..10 {
[INFO] [stdout]     |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |             for i in 0..lens.len() {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 229 |             state_to_buffer!(state, self.output);
[INFO] [stdout]     |             ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `state_to_buffer` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |                 $output[i*4..(i+1)*4].copy_from_slice(&lens[i].to_le_bytes());
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 229 |             state_to_buffer!(state, self.output);
[INFO] [stdout]     |             ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `state_to_buffer` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:261:14
[INFO] [stdout]     |
[INFO] [stdout] 261 |                 for j in 0..count {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:284:14
[INFO] [stdout]     |
[INFO] [stdout] 284 |                 for j in 0..count {
[INFO] [stdout]     |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:346:43
[INFO] [stdout]     |
[INFO] [stdout] 346 |             self.chacha.process_in_place(&mut dest[0..res]);
[INFO] [stdout]     |                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/chacha20.rs:645:38
[INFO] [stdout]     |
[INFO] [stdout] 645 |         let nonce_12bytes = &nonce_16bytes[4..];
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:29:40
[INFO] [stdout]    |
[INFO] [stdout] 29 |         poly.r[0] = (u32::from_le_bytes(key[ 0.. 4].try_into().expect("len is 4"))     ) & 0x3ffffff;
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:30:40
[INFO] [stdout]    |
[INFO] [stdout] 30 |         poly.r[1] = (u32::from_le_bytes(key[ 3.. 7].try_into().expect("len is 4")) >> 2) & 0x3ffff03;
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:31:40
[INFO] [stdout]    |
[INFO] [stdout] 31 |         poly.r[2] = (u32::from_le_bytes(key[ 6..10].try_into().expect("len is 4")) >> 4) & 0x3ffc0ff;
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:32:40
[INFO] [stdout]    |
[INFO] [stdout] 32 |         poly.r[3] = (u32::from_le_bytes(key[ 9..13].try_into().expect("len is 4")) >> 6) & 0x3f03fff;
[INFO] [stdout]    |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:33:39
[INFO] [stdout]    |
[INFO] [stdout] 33 |         poly.r[4] = (u32::from_le_bytes(key[12..16].try_into().expect("len is 4")) >> 8) & 0x00fffff;
[INFO] [stdout]    |                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:35:40
[INFO] [stdout]    |
[INFO] [stdout] 35 |         poly.pad[0] = u32::from_le_bytes(key[16..20].try_into().expect("len is 4"));
[INFO] [stdout]    |                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:36:40
[INFO] [stdout]    |
[INFO] [stdout] 36 |         poly.pad[1] = u32::from_le_bytes(key[20..24].try_into().expect("len is 4"));
[INFO] [stdout]    |                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:37:40
[INFO] [stdout]    |
[INFO] [stdout] 37 |         poly.pad[2] = u32::from_le_bytes(key[24..28].try_into().expect("len is 4"));
[INFO] [stdout]    |                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:38:40
[INFO] [stdout]    |
[INFO] [stdout] 38 |         poly.pad[3] = u32::from_le_bytes(key[28..32].try_into().expect("len is 4"));
[INFO] [stdout]    |                                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:64:32
[INFO] [stdout]    |
[INFO] [stdout] 64 |         h0 += (u32::from_le_bytes(m[ 0.. 4].try_into().expect("len is 4"))     ) & 0x3ffffff;
[INFO] [stdout]    |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:65:32
[INFO] [stdout]    |
[INFO] [stdout] 65 |         h1 += (u32::from_le_bytes(m[ 3.. 7].try_into().expect("len is 4")) >> 2) & 0x3ffffff;
[INFO] [stdout]    |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:66:32
[INFO] [stdout]    |
[INFO] [stdout] 66 |         h2 += (u32::from_le_bytes(m[ 6..10].try_into().expect("len is 4")) >> 4) & 0x3ffffff;
[INFO] [stdout]    |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:67:32
[INFO] [stdout]    |
[INFO] [stdout] 67 |         h3 += (u32::from_le_bytes(m[ 9..13].try_into().expect("len is 4")) >> 6) & 0x3ffffff;
[INFO] [stdout]    |                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:68:31
[INFO] [stdout]    |
[INFO] [stdout] 68 |         h4 += (u32::from_le_bytes(m[12..16].try_into().expect("len is 4")) >> 8) | hibit;
[INFO] [stdout]    |                                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/poly1305.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |             for i in self.leftover+1..16 {
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:166:13
[INFO] [stdout]     |
[INFO] [stdout] 166 |             for i in 0..want {
[INFO] [stdout]     |                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:169:11
[INFO] [stdout]     |
[INFO] [stdout] 169 |             m = &m[want..];
[INFO] [stdout]     |                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:184:18
[INFO] [stdout]     |
[INFO] [stdout] 184 |             self.block(&m[0..16]);
[INFO] [stdout]     |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:185:11
[INFO] [stdout]     |
[INFO] [stdout] 185 |             m = &m[16..];
[INFO] [stdout]     |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:188:12
[INFO] [stdout]     |
[INFO] [stdout] 188 |         for i in 0..m.len() {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:199:10
[INFO] [stdout]     |
[INFO] [stdout] 199 |         output[0..4].copy_from_slice(&self.h[0].to_le_bytes());
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:200:10
[INFO] [stdout]     |
[INFO] [stdout] 200 |         output[4..8].copy_from_slice(&self.h[1].to_le_bytes());
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:201:10
[INFO] [stdout]     |
[INFO] [stdout] 201 |         output[8..12].copy_from_slice(&self.h[2].to_le_bytes());
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:202:10
[INFO] [stdout]     |
[INFO] [stdout] 202 |         output[12..16].copy_from_slice(&self.h[3].to_le_bytes());
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:258:19
[INFO] [stdout]     |
[INFO] [stdout] 258 |         poly.input(&msg[0..32]);
[INFO] [stdout]     |                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:259:19
[INFO] [stdout]     |
[INFO] [stdout] 259 |         poly.input(&msg[32..96]);
[INFO] [stdout]     |                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:260:19
[INFO] [stdout]     |
[INFO] [stdout] 260 |         poly.input(&msg[96..112]);
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:261:19
[INFO] [stdout]     |
[INFO] [stdout] 261 |         poly.input(&msg[112..120]);
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:262:19
[INFO] [stdout]     |
[INFO] [stdout] 262 |         poly.input(&msg[120..124]);
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:263:19
[INFO] [stdout]     |
[INFO] [stdout] 263 |         poly.input(&msg[124..126]);
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:264:19
[INFO] [stdout]     |
[INFO] [stdout] 264 |         poly.input(&msg[126..127]);
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:265:19
[INFO] [stdout]     |
[INFO] [stdout] 265 |         poly.input(&msg[127..128]);
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:266:19
[INFO] [stdout]     |
[INFO] [stdout] 266 |         poly.input(&msg[128..129]);
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:267:19
[INFO] [stdout]     |
[INFO] [stdout] 267 |         poly.input(&msg[129..130]);
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:268:19
[INFO] [stdout]     |
[INFO] [stdout] 268 |         poly.input(&msg[130..131]);
[INFO] [stdout]     |                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:309:12
[INFO] [stdout]     |
[INFO] [stdout] 309 |         for i in 0..256 {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/poly1305.rs:313:28
[INFO] [stdout]     |
[INFO] [stdout] 313 |             poly1305(&key[..], &msg[0..i], &mut mac);
[INFO] [stdout]     |                                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/util/chacha20poly1305rfc.rs:36:24
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 mac.input(&[0; 16][0..16 - (len % 16)]);
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> src/util/chacha20poly1305rfc.rs:46:47
[INFO] [stdout]    |
[INFO] [stdout] 46 |             let mut cipher = ChaCha20::new(key, &nonce[4..]);
[INFO] [stdout]    |                                                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/chacha20poly1305rfc.rs:171:43
[INFO] [stdout]     |
[INFO] [stdout] 171 |             self.chacha.decrypt_in_place(&mut dest[0..res]);
[INFO] [stdout]     |                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/util/chacha20poly1305rfc.rs:191:59
[INFO] [stdout]     |
[INFO] [stdout] 191 |             let bytes_written = (&mut write_buffer[..]).write(&src[src_idx..]).expect("In-memory writes can't fail");
[INFO] [stdout]     |                                                                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/scid_utils.rs:123:58
[INFO] [stdout]     |
[INFO] [stdout] 123 |             let rand_for_tx_index = u32::from_be_bytes(rand_bytes[4..8].try_into().unwrap());
[INFO] [stdout]     |                                                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/scid_utils.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 136 |             salt[0..4].copy_from_slice(&block_height_bytes);
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/scid_utils.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |             salt[4..8].copy_from_slice(&tx_index_bytes);
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/util/indexed_map.rs:129:27
[INFO] [stdout]     |
[INFO] [stdout] 129 |             inner_range: self.keys[start..end].iter(),
[INFO] [stdout]     |                                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/util/test_utils.rs:1365:12
[INFO] [stdout]      |
[INFO] [stdout] 1365 |         for i in 0..tx.input.len() {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/chain/chainmonitor.rs:1005:20
[INFO] [stdout]      |
[INFO] [stdout] 1005 |         let remote_txn = get_local_commitment_txn!(nodes[1], channel.2);
[INFO] [stdout]      |                          ---------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/channelmonitor.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 119 |         for _ in 0..len {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/channelmonitor.rs:301:14
[INFO] [stdout]     |
[INFO] [stdout] 301 |             for _  in 0..per_htlc_len {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/channelmonitor.rs:304:14
[INFO] [stdout]     |
[INFO] [stdout] 304 |                 for _ in 0..htlcs_count {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4238:27
[INFO] [stdout]      |
[INFO] [stdout] 4238 |                 if second_point_slice[0..32] == [0; 32] && second_point_slice[32] == 0 {
[INFO] [stdout]      |                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4268:12
[INFO] [stdout]      |
[INFO] [stdout] 4268 |         for _ in 0..counterparty_claimable_outpoints_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4272:13
[INFO] [stdout]      |
[INFO] [stdout] 4272 |             for _ in 0..htlcs_count {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4282:12
[INFO] [stdout]      |
[INFO] [stdout] 4282 |         for _ in 0..counterparty_commitment_txn_on_chain_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4292:12
[INFO] [stdout]      |
[INFO] [stdout] 4292 |         for _ in 0..counterparty_hash_commitment_number_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4315:12
[INFO] [stdout]      |
[INFO] [stdout] 4315 |         for _ in 0..payment_preimages_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4326:12
[INFO] [stdout]      |
[INFO] [stdout] 4326 |         for _ in 0..pending_monitor_events_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4337:12
[INFO] [stdout]      |
[INFO] [stdout] 4337 |         for _ in 0..pending_events_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4347:12
[INFO] [stdout]      |
[INFO] [stdout] 4347 |         for _ in 0..waiting_threshold_conf_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4355:12
[INFO] [stdout]      |
[INFO] [stdout] 4355 |         for _ in 0..outputs_to_watch_len {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4359:13
[INFO] [stdout]      |
[INFO] [stdout] 4359 |             for _ in 0..outputs_len {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/chain/channelmonitor.rs:4546:19
[INFO] [stdout]      |
[INFO] [stdout] 4546 |         let local_txn = get_local_commitment_txn!(nodes[1], channel.2);
[INFO] [stdout]      |                         ---------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/chain/channelmonitor.rs:4548:20
[INFO] [stdout]      |
[INFO] [stdout] 4548 |         let remote_txn = get_local_commitment_txn!(nodes[0], channel.2);
[INFO] [stdout]      |                          ---------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/chain/channelmonitor.rs:4562:29
[INFO] [stdout]      |
[INFO] [stdout] 4562 |                         &mut io::Cursor::new(&get_monitor!(nodes[1], channel.2).encode()),
[INFO] [stdout]      |                                               --------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4617:13
[INFO] [stdout]      |
[INFO] [stdout] 4617 |             for i in 0..20 {
[INFO] [stdout]      |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4700:55
[INFO] [stdout]      |
[INFO] [stdout] 4700 |         let mut htlcs = preimages_slice_to_htlcs!(preimages[0..10]);
[INFO] [stdout]      |                                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4705:47
[INFO] [stdout]      |
[INFO] [stdout] 4705 |             preimages_slice_to_htlc_outputs!(preimages[5..15]), 281474976710655, dummy_key, &logger);
[INFO] [stdout]      |                                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4707:47
[INFO] [stdout]      |
[INFO] [stdout] 4707 |             preimages_slice_to_htlc_outputs!(preimages[15..20]), 281474976710654, dummy_key, &logger);
[INFO] [stdout]      |                                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4715:10
[INFO] [stdout]      |
[INFO] [stdout] 4715 |         secret[0..32].clone_from_slice(&hex::decode("7cc854b54e3e0dcdb010d7a3fee464a9687be6e8db3be6854c475621e007a5dc").unwrap());
[INFO] [stdout]      |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4718:36
[INFO] [stdout]      |
[INFO] [stdout] 4718 |         test_preimages_exist!(&preimages[0..10], monitor);
[INFO] [stdout]      |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4719:36
[INFO] [stdout]      |
[INFO] [stdout] 4719 |         test_preimages_exist!(&preimages[15..20], monitor);
[INFO] [stdout]      |                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4722:47
[INFO] [stdout]      |
[INFO] [stdout] 4722 |             preimages_slice_to_htlc_outputs!(preimages[17..20]), 281474976710653, dummy_key, &logger);
[INFO] [stdout]      |                                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4725:10
[INFO] [stdout]      |
[INFO] [stdout] 4725 |         secret[0..32].clone_from_slice(&hex::decode("c7518c8ae4660ed02894df8976fa1a3659c1a8b4b5bec0c4b872abeba4cb8964").unwrap());
[INFO] [stdout]      |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4728:36
[INFO] [stdout]      |
[INFO] [stdout] 4728 |         test_preimages_exist!(&preimages[0..10], monitor);
[INFO] [stdout]      |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4729:36
[INFO] [stdout]      |
[INFO] [stdout] 4729 |         test_preimages_exist!(&preimages[17..20], monitor);
[INFO] [stdout]      |                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4732:47
[INFO] [stdout]      |
[INFO] [stdout] 4732 |             preimages_slice_to_htlc_outputs!(preimages[18..20]), 281474976710652, dummy_key, &logger);
[INFO] [stdout]      |                                                        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4736:55
[INFO] [stdout]      |
[INFO] [stdout] 4736 |         let mut htlcs = preimages_slice_to_htlcs!(preimages[0..5]);
[INFO] [stdout]      |                                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4740:10
[INFO] [stdout]      |
[INFO] [stdout] 4740 |         secret[0..32].clone_from_slice(&hex::decode("2273e227a5b7449b6e70f1fb4652864038b1cbf9cd7c043a7d6456b7fc275ad8").unwrap());
[INFO] [stdout]      |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4743:36
[INFO] [stdout]      |
[INFO] [stdout] 4743 |         test_preimages_exist!(&preimages[0..10], monitor);
[INFO] [stdout]      |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4744:36
[INFO] [stdout]      |
[INFO] [stdout] 4744 |         test_preimages_exist!(&preimages[18..20], monitor);
[INFO] [stdout]      |                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4747:55
[INFO] [stdout]      |
[INFO] [stdout] 4747 |         let mut htlcs = preimages_slice_to_htlcs!(preimages[0..3]);
[INFO] [stdout]      |                                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4751:10
[INFO] [stdout]      |
[INFO] [stdout] 4751 |         secret[0..32].clone_from_slice(&hex::decode("27cddaa5624534cb6cb9d7da077cf2b22ab21e9b506fd4998a51d54502e99116").unwrap());
[INFO] [stdout]      |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4754:36
[INFO] [stdout]      |
[INFO] [stdout] 4754 |         test_preimages_exist!(&preimages[0..5], monitor);
[INFO] [stdout]      |                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4807:13
[INFO] [stdout]      |
[INFO] [stdout] 4807 |             for i in 0..4 {
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/channelmonitor.rs:4839:13
[INFO] [stdout]      |
[INFO] [stdout] 4839 |             for i in 0..4 {
[INFO] [stdout]      |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:136:14
[INFO] [stdout]     |
[INFO] [stdout] 136 |                 for _ in 0..vlen {
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:368:31
[INFO] [stdout]     |
[INFO] [stdout] 368 |             let read_slice = &mut data[0..bytes_to_read];
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:378:12
[INFO] [stdout]     |
[INFO] [stdout] 378 |         for _ in 0..pending_claim_requests_len {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:384:12
[INFO] [stdout]     |
[INFO] [stdout] 384 |         for _ in 0..claimable_outpoints_len {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:393:12
[INFO] [stdout]     |
[INFO] [stdout] 393 |         for _ in 0..locktimed_packages_len {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:397:13
[INFO] [stdout]     |
[INFO] [stdout] 397 |             for _ in 0..packages_len {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/chain/onchaintx.rs:405:12
[INFO] [stdout]     |
[INFO] [stdout] 405 |         for _ in 0..waiting_threshold_conf_len {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/chain/package.rs:1070:12
[INFO] [stdout]      |
[INFO] [stdout] 1070 |         for _ in 0..inputs_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/ln/functional_test_utils.rs:84:11
[INFO] [stdout]    |
[INFO] [stdout] 84 |     for _ in 0..*node.network_chan_count.borrow() { // Make sure we don't end up with channels at the same short id by offsetting by chan...
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:102:11
[INFO] [stdout]     |
[INFO] [stdout] 102 |     for _ in 0..*node.network_chan_count.borrow() { // Make sure we don't end up with channels at the same short id by offsetting by chan...
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:226:11
[INFO] [stdout]     |
[INFO] [stdout] 226 |     for i in 1..depth {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:329:11
[INFO] [stdout]     |
[INFO] [stdout] 329 |     for i in 0..count {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:2003:12
[INFO] [stdout]      |
[INFO] [stdout] 2003 |         for i in 1..events.len() {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:2684:11
[INFO] [stdout]      |
[INFO] [stdout] 2684 |     for i in 0..node_count {
[INFO] [stdout]      |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:2707:11
[INFO] [stdout]      |
[INFO] [stdout] 2707 |     for i in 0..node_count {
[INFO] [stdout]      |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:2748:11
[INFO] [stdout]      |
[INFO] [stdout] 2748 |     for i in 0..node_count {
[INFO] [stdout]      |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:2769:11
[INFO] [stdout]      |
[INFO] [stdout] 2769 |     for i in 0..node_count {
[INFO] [stdout]      |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:2790:11
[INFO] [stdout]      |
[INFO] [stdout] 2790 |     for i in 0..node_count {
[INFO] [stdout]      |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:2791:12
[INFO] [stdout]      |
[INFO] [stdout] 2791 |         for j in (i+1)..node_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]     --> src/ln/channelmanager.rs:1418:8
[INFO] [stdout]      |
[INFO] [stdout] 1418 | #[deny(const_err)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]     --> src/ln/channelmanager.rs:1424:8
[INFO] [stdout]      |
[INFO] [stdout] 1424 | #[deny(const_err)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channelmanager.rs:9750:12
[INFO] [stdout]      |
[INFO] [stdout] 9750 |         for _ in 0..len {
[INFO] [stdout]      |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channelmanager.rs:9939:12
[INFO] [stdout]      |
[INFO] [stdout] 9939 |         for _ in 0..channel_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10064:12
[INFO] [stdout]       |
[INFO] [stdout] 10064 |         for _ in 0..forward_htlcs_count {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10068:13
[INFO] [stdout]       |
[INFO] [stdout] 10068 |             for _ in 0..pending_forwards_count {
[INFO] [stdout]       |                      ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10076:12
[INFO] [stdout]       |
[INFO] [stdout] 10076 |         for _ in 0..claimable_htlcs_count {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10080:13
[INFO] [stdout]       |
[INFO] [stdout] 10080 |             for _ in 0..previous_hops_len {
[INFO] [stdout]       |                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10101:12
[INFO] [stdout]       |
[INFO] [stdout] 10101 |         for _ in 0..peer_count {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10112:12
[INFO] [stdout]       |
[INFO] [stdout] 10112 |         for _ in 0..event_count {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10120:12
[INFO] [stdout]       |
[INFO] [stdout] 10120 |         for _ in 0..background_event_count {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10138:12
[INFO] [stdout]       |
[INFO] [stdout] 10138 |         for _ in 0..pending_inbound_payment_count {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:10147:12
[INFO] [stdout]       |
[INFO] [stdout] 10147 |         for _ in 0..pending_outbound_payments_count_compat {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:11553:14
[INFO] [stdout]       |
[INFO] [stdout] 11553 |         for idx in 0..super::MAX_UNFUNDED_CHANS_PER_PEER {
[INFO] [stdout]       |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:11587:12
[INFO] [stdout]       |
[INFO] [stdout] 11587 |         for _ in 1..super::MAX_NO_CHANNEL_PEERS {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:11626:12
[INFO] [stdout]       |
[INFO] [stdout] 11626 |         for i in 0..super::MAX_UNFUNDED_CHANNEL_PEERS - 1 {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:11666:12
[INFO] [stdout]       |
[INFO] [stdout] 11666 |         for _ in 0..super::MAX_UNFUNDED_CHANS_PER_PEER {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/channelmanager.rs:11705:12
[INFO] [stdout]       |
[INFO] [stdout] 11705 |         for _ in 0..super::MAX_UNFUNDED_CHANNEL_PEERS - 1 {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/inbound_payment.rs:165:28
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let expiry_bytes = &bytes[AMT_MSAT_LEN..];
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/inbound_payment.rs:277:17
[INFO] [stdout]     |
[INFO] [stdout] 277 |     metadata_bytes[AMT_MSAT_LEN..].copy_from_slice(&expiry_bytes);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/inbound_payment.rs:340:47
[INFO] [stdout]     |
[INFO] [stdout] 340 |     expiry_bytes.copy_from_slice(&metadata_bytes[AMT_MSAT_LEN..]);
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/msgs.rs:1012:41
[INFO] [stdout]      |
[INFO] [stdout] 1012 |         ed25519_pubkey.copy_from_slice(&onion[3..35]);
[INFO] [stdout]      |                                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ln/msgs.rs:1063:23
[INFO] [stdout]      |
[INFO] [stdout] 1063 |                 let port: u16 = s[trimmed_input + 1..].parse().map_err(|_| SocketAddressParseError::InvalidPort)?;
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ln/msgs.rs:2546:42
[INFO] [stdout]      |
[INFO] [stdout] 2546 |             r.read_exact(&mut excess_address_data[if excess { 1 } else { 0 }..])?;
[INFO] [stdout]      |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/msgs.rs:2599:12
[INFO] [stdout]      |
[INFO] [stdout] 2599 |         for _ in 0..short_channel_id_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/msgs.rs:2678:12
[INFO] [stdout]      |
[INFO] [stdout] 2678 |         for _ in 0..short_channel_id_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ln/peer_handler.rs:1164:29
[INFO] [stdout]      |
[INFO] [stdout] 1164 |             let pending = &next_buff[peer.pending_outbound_buffer_first_msg_offset..];
[INFO] [stdout]      |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/peer_handler.rs:1328:32
[INFO] [stdout]      |
[INFO] [stdout] 1328 | ...   peer.pending_read_buffer[peer.pending_read_buffer_pos..peer.pending_read_buffer_pos + data_to_copy].copy_from_slice(&data[read_pos....
[INFO] [stdout]      |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/peer_handler.rs:1328:129
[INFO] [stdout]      |
[INFO] [stdout] 1328 | ..._buffer_pos + data_to_copy].copy_from_slice(&data[read_pos..read_pos + data_to_copy]);
[INFO] [stdout]      |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `const_err` has been removed: converted into hard error, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> for more information
[INFO] [stdout]     --> src/ln/peer_handler.rs:2407:9
[INFO] [stdout]      |
[INFO] [stdout] 2407 |     #[deny(const_err)]
[INFO] [stdout]      |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/peer_handler.rs:2569:12
[INFO] [stdout]      |
[INFO] [stdout] 2569 |         for i in 0..peer_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/peer_handler.rs:2592:12
[INFO] [stdout]      |
[INFO] [stdout] 2592 |         for i in 0..peer_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/peer_handler.rs:2615:12
[INFO] [stdout]      |
[INFO] [stdout] 2615 |         for i in 0..peer_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/peer_handler.rs:2635:12
[INFO] [stdout]      |
[INFO] [stdout] 2635 |         for i in 0..peer_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/peer_handler.rs:2964:12
[INFO] [stdout]      |
[INFO] [stdout] 2964 |         for _ in 0..150/super::BUFFER_DRAIN_MSGS_PER_TICK + 1 {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/chan_utils.rs:173:11
[INFO] [stdout]     |
[INFO] [stdout] 173 |     for i in 0..48 {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/chan_utils.rs:257:12
[INFO] [stdout]     |
[INFO] [stdout] 257 |         for i in 0..48 {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/chan_utils.rs:281:12
[INFO] [stdout]     |
[INFO] [stdout] 281 |         for i in 0..bits {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/chan_utils.rs:295:12
[INFO] [stdout]     |
[INFO] [stdout] 295 |         for i in 0..pos {
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/chan_utils.rs:311:12
[INFO] [stdout]     |
[INFO] [stdout] 311 |         for i in 0..self.old_secrets.len() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:1104:12
[INFO] [stdout]      |
[INFO] [stdout] 1104 |         for _ in 0..htlcs.len() {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2078:32
[INFO] [stdout]      |
[INFO] [stdout] 2078 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("7cc854b54e3e0dcdb010d7a3fee464a9687be6e8db3be6854c475621e007a5dc"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2083:32
[INFO] [stdout]      |
[INFO] [stdout] 2083 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c7518c8ae4660ed02894df8976fa1a3659c1a8b4b5bec0c4b872abeba4cb8964"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2088:32
[INFO] [stdout]      |
[INFO] [stdout] 2088 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("2273e227a5b7449b6e70f1fb4652864038b1cbf9cd7c043a7d6456b7fc275ad8"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2093:32
[INFO] [stdout]      |
[INFO] [stdout] 2093 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("27cddaa5624534cb6cb9d7da077cf2b22ab21e9b506fd4998a51d54502e99116"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2098:32
[INFO] [stdout]      |
[INFO] [stdout] 2098 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c65716add7aa98ba7acb236352d665cab17345fe45b55fb879ff80e6bd0c41dd"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2103:32
[INFO] [stdout]      |
[INFO] [stdout] 2103 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("969660042a28f32d9be17344e09374b379962d03db1574df5a8a5a47e19ce3f2"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2108:32
[INFO] [stdout]      |
[INFO] [stdout] 2108 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("a5a64476122ca0925fb344bdc1854c1c0a59fc614298e50a33e331980a220f32"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2113:32
[INFO] [stdout]      |
[INFO] [stdout] 2113 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("05cde6323d949933f7f7b78776bcc1ea6d9b31447732e3802e1f7ac44b650e17"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2124:32
[INFO] [stdout]      |
[INFO] [stdout] 2124 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("02a40c85b6f28da08dfdbe0926c53fab2de6d28c10301f8f7c4073d5e42e3148"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2129:32
[INFO] [stdout]      |
[INFO] [stdout] 2129 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c7518c8ae4660ed02894df8976fa1a3659c1a8b4b5bec0c4b872abeba4cb8964"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2139:32
[INFO] [stdout]      |
[INFO] [stdout] 2139 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("02a40c85b6f28da08dfdbe0926c53fab2de6d28c10301f8f7c4073d5e42e3148"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2144:32
[INFO] [stdout]      |
[INFO] [stdout] 2144 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("dddc3a8d14fddf2b68fa8c7fbad2748274937479dd0f8930d5ebb4ab6bd866a3"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2149:32
[INFO] [stdout]      |
[INFO] [stdout] 2149 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("2273e227a5b7449b6e70f1fb4652864038b1cbf9cd7c043a7d6456b7fc275ad8"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2154:32
[INFO] [stdout]      |
[INFO] [stdout] 2154 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("27cddaa5624534cb6cb9d7da077cf2b22ab21e9b506fd4998a51d54502e99116"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2164:32
[INFO] [stdout]      |
[INFO] [stdout] 2164 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("7cc854b54e3e0dcdb010d7a3fee464a9687be6e8db3be6854c475621e007a5dc"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2169:32
[INFO] [stdout]      |
[INFO] [stdout] 2169 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c7518c8ae4660ed02894df8976fa1a3659c1a8b4b5bec0c4b872abeba4cb8964"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2174:32
[INFO] [stdout]      |
[INFO] [stdout] 2174 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c51a18b13e8527e579ec56365482c62f180b7d5760b46e9477dae59e87ed423a"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2179:32
[INFO] [stdout]      |
[INFO] [stdout] 2179 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("27cddaa5624534cb6cb9d7da077cf2b22ab21e9b506fd4998a51d54502e99116"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2189:32
[INFO] [stdout]      |
[INFO] [stdout] 2189 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("02a40c85b6f28da08dfdbe0926c53fab2de6d28c10301f8f7c4073d5e42e3148"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2194:32
[INFO] [stdout]      |
[INFO] [stdout] 2194 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("dddc3a8d14fddf2b68fa8c7fbad2748274937479dd0f8930d5ebb4ab6bd866a3"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2199:32
[INFO] [stdout]      |
[INFO] [stdout] 2199 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c51a18b13e8527e579ec56365482c62f180b7d5760b46e9477dae59e87ed423a"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2204:32
[INFO] [stdout]      |
[INFO] [stdout] 2204 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("ba65d7b0ef55a3ba300d4e87af29868f394f8f138d78a7011669c79b37b936f4"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2209:32
[INFO] [stdout]      |
[INFO] [stdout] 2209 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c65716add7aa98ba7acb236352d665cab17345fe45b55fb879ff80e6bd0c41dd"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2214:32
[INFO] [stdout]      |
[INFO] [stdout] 2214 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("969660042a28f32d9be17344e09374b379962d03db1574df5a8a5a47e19ce3f2"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2219:32
[INFO] [stdout]      |
[INFO] [stdout] 2219 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("a5a64476122ca0925fb344bdc1854c1c0a59fc614298e50a33e331980a220f32"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2224:32
[INFO] [stdout]      |
[INFO] [stdout] 2224 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("05cde6323d949933f7f7b78776bcc1ea6d9b31447732e3802e1f7ac44b650e17"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2234:32
[INFO] [stdout]      |
[INFO] [stdout] 2234 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("7cc854b54e3e0dcdb010d7a3fee464a9687be6e8db3be6854c475621e007a5dc"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2239:32
[INFO] [stdout]      |
[INFO] [stdout] 2239 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c7518c8ae4660ed02894df8976fa1a3659c1a8b4b5bec0c4b872abeba4cb8964"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2244:32
[INFO] [stdout]      |
[INFO] [stdout] 2244 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("2273e227a5b7449b6e70f1fb4652864038b1cbf9cd7c043a7d6456b7fc275ad8"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2249:32
[INFO] [stdout]      |
[INFO] [stdout] 2249 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("27cddaa5624534cb6cb9d7da077cf2b22ab21e9b506fd4998a51d54502e99116"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2254:32
[INFO] [stdout]      |
[INFO] [stdout] 2254 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("631373ad5f9ef654bb3dade742d09504c567edd24320d2fcd68e3cc47e2ff6a6"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2259:32
[INFO] [stdout]      |
[INFO] [stdout] 2259 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("969660042a28f32d9be17344e09374b379962d03db1574df5a8a5a47e19ce3f2"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2269:32
[INFO] [stdout]      |
[INFO] [stdout] 2269 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("7cc854b54e3e0dcdb010d7a3fee464a9687be6e8db3be6854c475621e007a5dc"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2274:32
[INFO] [stdout]      |
[INFO] [stdout] 2274 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c7518c8ae4660ed02894df8976fa1a3659c1a8b4b5bec0c4b872abeba4cb8964"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2279:32
[INFO] [stdout]      |
[INFO] [stdout] 2279 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("2273e227a5b7449b6e70f1fb4652864038b1cbf9cd7c043a7d6456b7fc275ad8"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2284:32
[INFO] [stdout]      |
[INFO] [stdout] 2284 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("27cddaa5624534cb6cb9d7da077cf2b22ab21e9b506fd4998a51d54502e99116"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2289:32
[INFO] [stdout]      |
[INFO] [stdout] 2289 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("631373ad5f9ef654bb3dade742d09504c567edd24320d2fcd68e3cc47e2ff6a6"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2294:32
[INFO] [stdout]      |
[INFO] [stdout] 2294 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("b7e76a83668bde38b373970155c868a653304308f9896692f904a23731224bb1"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2299:32
[INFO] [stdout]      |
[INFO] [stdout] 2299 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("a5a64476122ca0925fb344bdc1854c1c0a59fc614298e50a33e331980a220f32"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2304:32
[INFO] [stdout]      |
[INFO] [stdout] 2304 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("05cde6323d949933f7f7b78776bcc1ea6d9b31447732e3802e1f7ac44b650e17"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2314:32
[INFO] [stdout]      |
[INFO] [stdout] 2314 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("7cc854b54e3e0dcdb010d7a3fee464a9687be6e8db3be6854c475621e007a5dc"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2319:32
[INFO] [stdout]      |
[INFO] [stdout] 2319 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c7518c8ae4660ed02894df8976fa1a3659c1a8b4b5bec0c4b872abeba4cb8964"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2324:32
[INFO] [stdout]      |
[INFO] [stdout] 2324 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("2273e227a5b7449b6e70f1fb4652864038b1cbf9cd7c043a7d6456b7fc275ad8"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2329:32
[INFO] [stdout]      |
[INFO] [stdout] 2329 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("27cddaa5624534cb6cb9d7da077cf2b22ab21e9b506fd4998a51d54502e99116"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2334:32
[INFO] [stdout]      |
[INFO] [stdout] 2334 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c65716add7aa98ba7acb236352d665cab17345fe45b55fb879ff80e6bd0c41dd"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2339:32
[INFO] [stdout]      |
[INFO] [stdout] 2339 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("969660042a28f32d9be17344e09374b379962d03db1574df5a8a5a47e19ce3f2"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2344:32
[INFO] [stdout]      |
[INFO] [stdout] 2344 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("e7971de736e01da8ed58b94c2fc216cb1dca9e326f3a96e7194fe8ea8af6c0a3"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2349:32
[INFO] [stdout]      |
[INFO] [stdout] 2349 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("05cde6323d949933f7f7b78776bcc1ea6d9b31447732e3802e1f7ac44b650e17"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2359:32
[INFO] [stdout]      |
[INFO] [stdout] 2359 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("7cc854b54e3e0dcdb010d7a3fee464a9687be6e8db3be6854c475621e007a5dc"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2364:32
[INFO] [stdout]      |
[INFO] [stdout] 2364 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c7518c8ae4660ed02894df8976fa1a3659c1a8b4b5bec0c4b872abeba4cb8964"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2369:32
[INFO] [stdout]      |
[INFO] [stdout] 2369 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("2273e227a5b7449b6e70f1fb4652864038b1cbf9cd7c043a7d6456b7fc275ad8"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2374:32
[INFO] [stdout]      |
[INFO] [stdout] 2374 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("27cddaa5624534cb6cb9d7da077cf2b22ab21e9b506fd4998a51d54502e99116"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2379:32
[INFO] [stdout]      |
[INFO] [stdout] 2379 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("c65716add7aa98ba7acb236352d665cab17345fe45b55fb879ff80e6bd0c41dd"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2384:32
[INFO] [stdout]      |
[INFO] [stdout] 2384 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("969660042a28f32d9be17344e09374b379962d03db1574df5a8a5a47e19ce3f2"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2389:32
[INFO] [stdout]      |
[INFO] [stdout] 2389 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("a5a64476122ca0925fb344bdc1854c1c0a59fc614298e50a33e331980a220f32"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chan_utils.rs:2394:32
[INFO] [stdout]      |
[INFO] [stdout] 2394 | ...   secrets.last_mut().unwrap()[0..32].clone_from_slice(&hex::decode("a7efbc61aac46d34f77778bac22c8a20c6a46ca460addc49009bda875ec88fa4"...
[INFO] [stdout]      |                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/features.rs:525:13
[INFO] [stdout]     |
[INFO] [stdout] 525 |         for i in (0..len).rev() {
[INFO] [stdout]     |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         nonce[4..].copy_from_slice(&n.to_le_bytes()[..]);
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:151:38
[INFO] [stdout]     |
[INFO] [stdout] 151 |         chacha.encrypt(plaintext, &mut res[0..plaintext.len()], &mut tag);
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:152:7
[INFO] [stdout]     |
[INFO] [stdout] 152 |         res[plaintext.len()..].copy_from_slice(&tag);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 160 |         nonce[4..].copy_from_slice(&n.to_le_bytes()[..]);
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:164:49
[INFO] [stdout]     |
[INFO] [stdout] 164 |         chacha.encrypt_full_message_in_place(&mut res[offset..], &mut tag);
[INFO] [stdout]     |                                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:171:9
[INFO] [stdout]     |
[INFO] [stdout] 171 |         nonce[4..].copy_from_slice(&n.to_le_bytes()[..]);
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:174:34
[INFO] [stdout]     |
[INFO] [stdout] 174 |         if !chacha.decrypt(&cyphertext[0..cyphertext.len() - 16], res, &cyphertext[cyphertext.len() - 16..]) {
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:174:78
[INFO] [stdout]     |
[INFO] [stdout] 174 |         if !chacha.decrypt(&cyphertext[0..cyphertext.len() - 16], res, &cyphertext[cyphertext.len() - 16..]) {
[INFO] [stdout]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:200:7
[INFO] [stdout]     |
[INFO] [stdout] 200 |         res[1..34].copy_from_slice(&our_pub.serialize()[..]);
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:201:50
[INFO] [stdout]     |
[INFO] [stdout] 201 |         PeerChannelEncryptor::encrypt_with_ad(&mut res[34..], 0, &temp_k, &state.h, &[0; 0]);
[INFO] [stdout]     |                                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:205:18
[INFO] [stdout]     |
[INFO] [stdout] 205 |         sha.input(&res[34..]);
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:221:52
[INFO] [stdout]     |
[INFO] [stdout] 221 |         let their_pub = match PublicKey::from_slice(&act[1..34]) {
[INFO] [stdout]     |                                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:222:83
[INFO] [stdout]     |
[INFO] [stdout] 222 | ...   Err(_) => return Err(LightningError{err: format!("Invalid public key {}", &act[1..34].to_hex()), action: msgs::ErrorAction::Disconn...
[INFO] [stdout]     |                                                                                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:243:78
[INFO] [stdout]     |
[INFO] [stdout] 243 |         PeerChannelEncryptor::decrypt_with_ad(&mut dec, 0, &temp_k, &state.h, &act[34..])?;
[INFO] [stdout]     |                                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:247:18
[INFO] [stdout]     |
[INFO] [stdout] 247 |         sha.input(&act[34..]);
[INFO] [stdout]     |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:325:54
[INFO] [stdout]     |
[INFO] [stdout] 325 |                         PeerChannelEncryptor::encrypt_with_ad(&mut res[1..50], 1, &temp_k2, &bidirectional_state.h, &our_node...
[INFO] [stdout]     |                                                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:329:22
[INFO] [stdout]     |
[INFO] [stdout] 329 |                         sha.input(&res[1..50]);
[INFO] [stdout]     |                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:338:54
[INFO] [stdout]     |
[INFO] [stdout] 338 |                         PeerChannelEncryptor::encrypt_with_ad(&mut res[50..], 0, &temp_k, &bidirectional_state.h, &[0; 0]);
[INFO] [stdout]     |                                                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:378:122
[INFO] [stdout]     |
[INFO] [stdout] 378 |                         PeerChannelEncryptor::decrypt_with_ad(&mut their_node_id, 1, &temp_k2.unwrap(), &bidirectional_state.h,...
[INFO] [stdout]     |                                                                                                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:386:28
[INFO] [stdout]     |
[INFO] [stdout] 386 |                         sha.input(&act_three[1..50]);
[INFO] [stdout]     |                                              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:392:105
[INFO] [stdout]     |
[INFO] [stdout] 392 |                         PeerChannelEncryptor::decrypt_with_ad(&mut [0; 0], 0, &temp_k, &bidirectional_state.h, &act_three[50..])?;
[INFO] [stdout]     |                                                                                                                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:433:36
[INFO] [stdout]     |
[INFO] [stdout] 433 |                 Self::encrypt_with_ad(&mut res[0..16+2], *sn, sk, &[0; 0], &(msg.len() as u16).to_be_bytes());
[INFO] [stdout]     |                                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:436:36
[INFO] [stdout]     |
[INFO] [stdout] 436 |                 Self::encrypt_with_ad(&mut res[16+2..], *sn, sk, &[0; 0], msg);
[INFO] [stdout]     |                                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:469:38
[INFO] [stdout]     |
[INFO] [stdout] 469 |                 Self::encrypt_with_ad(&mut res.0[0..16+2], *sn, sk, &[0; 0], &(msg_len as u16).to_be_bytes());
[INFO] [stdout]     |                                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:761:12
[INFO] [stdout]     |
[INFO] [stdout] 761 |         for i in 0..1005 {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:766:25
[INFO] [stdout]     |
[INFO] [stdout] 766 |             let len_header = res[0..2+16].to_vec();
[INFO] [stdout]     |                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/peer_channel_encryptor.rs:768:49
[INFO] [stdout]     |
[INFO] [stdout] 768 |             assert_eq!(inbound_peer.decrypt_message(&res[2+16..]).unwrap()[..], msg[..]);
[INFO] [stdout]     |                                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:6946:15
[INFO] [stdout]      |
[INFO] [stdout] 6946 |                     for _ in 0..idx { pending_outbound_skimmed_fees.push(None); }
[INFO] [stdout]      |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:6971:17
[INFO] [stdout]      |
[INFO] [stdout] 6971 | ...                   for _ in 0..idx { holding_cell_skimmed_fees.push(None); }
[INFO] [stdout]      |                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7192:32
[INFO] [stdout]      |
[INFO] [stdout] 7192 |                 let read_slice = &mut data[0..cmp::min(1024, keys_len as usize - keys_data.as_ref().unwrap().len())];
[INFO] [stdout]      |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7212:12
[INFO] [stdout]      |
[INFO] [stdout] 7212 |         for _ in 0..pending_inbound_htlc_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7230:12
[INFO] [stdout]      |
[INFO] [stdout] 7230 |         for _ in 0..pending_outbound_htlc_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7260:12
[INFO] [stdout]      |
[INFO] [stdout] 7260 |         for _ in 0..holding_cell_htlc_update_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7294:12
[INFO] [stdout]      |
[INFO] [stdout] 7294 |         for _ in 0..monitor_pending_forwards_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7300:12
[INFO] [stdout]      |
[INFO] [stdout] 7300 |         for _ in 0..monitor_pending_failures_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:7383:13
[INFO] [stdout]      |
[INFO] [stdout] 7383 |             for _ in 0..htlc_fulfills_len {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:8930:8
[INFO] [stdout]      |
[INFO] [stdout] 8930 |         seed[0..32].clone_from_slice(&hex::decode("0000000000000000000000000000000000000000000000000000000000000000").unwrap());
[INFO] [stdout]      |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:8934:8
[INFO] [stdout]      |
[INFO] [stdout] 8934 |         seed[0..32].clone_from_slice(&hex::decode("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF").unwrap());
[INFO] [stdout]      |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/channel.rs:8944:8
[INFO] [stdout]      |
[INFO] [stdout] 8944 |         seed[0..32].clone_from_slice(&hex::decode("0101010101010101010101010101010101010101010101010101010101010101").unwrap());
[INFO] [stdout]      |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:247:12
[INFO] [stdout]     |
[INFO] [stdout] 247 |     for i in (amt..arr.len()).rev() {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:250:11
[INFO] [stdout]     |
[INFO] [stdout] 250 |     for i in 0..amt {
[INFO] [stdout]     |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:327:13
[INFO] [stdout]     |
[INFO] [stdout] 327 |             for _ in 0..(packet_data.len() - pos) { // TODO: Batch this.
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:352:15
[INFO] [stdout]     |
[INFO] [stdout] 352 |         packet_data[0..payload_len.0].copy_from_slice(&payload.encode()[..]);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:353:15
[INFO] [stdout]     |
[INFO] [stdout] 353 |         packet_data[payload_len.0..(payload_len.0 + 32)].copy_from_slice(&hmac_res);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:361:16
[INFO] [stdout]     |
[INFO] [stdout] 361 |             packet_data[start_index..stop_index].copy_from_slice(&filler[..]);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:414:30
[INFO] [stdout]     |
[INFO] [stdout] 414 |     hmac.input(&packet.encode()[32..]);
[INFO] [stdout]     |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:521:35
[INFO] [stdout]     |
[INFO] [stdout] 521 |         hmac.input(&err_packet.encode()[32..]);
[INFO] [stdout]     |                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:524:58
[INFO] [stdout]     |
[INFO] [stdout] 524 |         let error_code_slice = match err_packet.failuremsg.get(0..2) {
[INFO] [stdout]     |                                                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:543:49
[INFO] [stdout]     |
[INFO] [stdout] 543 |         error_packet_ret = Some(err_packet.failuremsg[2..].to_vec());
[INFO] [stdout]     |                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:581:62
[INFO] [stdout]     |
[INFO] [stdout] 581 |             if let Some(update_len_slice) = err_packet.failuremsg.get(debug_field_size+2..debug_field_size+4) {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:583:63
[INFO] [stdout]     |
[INFO] [stdout] 583 |                 if let Some(mut update_slice) = err_packet.failuremsg.get(debug_field_size + 4..debug_field_size + 4 + update_len) {
[INFO] [stdout]     |                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:593:48
[INFO] [stdout]     |
[INFO] [stdout] 593 |                     if update_slice.len() > 2 && update_slice[0..2] == msgs::ChannelUpdate::TYPE.to_be_bytes() {
[INFO] [stdout]     |                                                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:594:36
[INFO] [stdout]     |
[INFO] [stdout] 594 |                         update_slice = &update_slice[2..];
[INFO] [stdout]     |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:696:151
[INFO] [stdout]     |
[INFO] [stdout] 696 | ...or_code, debug_field, log_bytes!(&err_packet.failuremsg[4..4+debug_field_size]), description);
[INFO] [stdout]     |                                                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:787:61
[INFO] [stdout]     |
[INFO] [stdout] 787 |             debug_assert_eq!(data.len() - 2, u16::from_be_bytes(data[0..2].try_into().unwrap()) as usize) }
[INFO] [stdout]     |                                                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:792:65
[INFO] [stdout]     |
[INFO] [stdout] 792 |             debug_assert_eq!(data.len() - 2 - 8, u16::from_be_bytes(data[8..10].try_into().unwrap()) as usize) }
[INFO] [stdout]     |                                                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:794:65
[INFO] [stdout]     |
[INFO] [stdout] 794 |             debug_assert_eq!(data.len() - 2 - 8, u16::from_be_bytes(data[8..10].try_into().unwrap()) as usize) }
[INFO] [stdout]     |                                                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:796:65
[INFO] [stdout]     |
[INFO] [stdout] 796 |             debug_assert_eq!(data.len() - 2 - 4, u16::from_be_bytes(data[4..6].try_into().unwrap()) as usize) }
[INFO] [stdout]     |                                                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:798:61
[INFO] [stdout]     |
[INFO] [stdout] 798 |             debug_assert_eq!(data.len() - 2, u16::from_be_bytes(data[0..2].try_into().unwrap()) as usize) }
[INFO] [stdout]     |                                                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_utils.rs:803:65
[INFO] [stdout]     |
[INFO] [stdout] 803 |             debug_assert_eq!(data.len() - 2 - 2, u16::from_be_bytes(data[2..4].try_into().unwrap()) as usize) }
[INFO] [stdout]     |                                                                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ln/onion_utils.rs:1012:74
[INFO] [stdout]      |
[INFO] [stdout] 1012 |                 chacha_stream.chacha.process_in_place(&mut new_packet_bytes.as_mut()[read_pos..]);
[INFO] [stdout]      |                                                                                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/outbound_payment.rs:1036:17
[INFO] [stdout]      |
[INFO] [stdout] 1036 | ...                   for _ in 0..route.paths.len() {
[INFO] [stdout]      |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/outbound_payment.rs:1258:12
[INFO] [stdout]      |
[INFO] [stdout] 1258 |         for _ in 0..route.paths.len() {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ln/outbound_payment.rs:1765:11
[INFO] [stdout]      |
[INFO] [stdout] 1765 |     preimage[32..].copy_from_slice(&payment_id.0);
[INFO] [stdout]      |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/outbound_payment.rs:2047:31
[INFO] [stdout]      |
[INFO] [stdout] 2047 |         for seconds_since_epoch in (0..absolute_expiry).step_by(tick_interval) {
[INFO] [stdout]      |                                     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/outbound_payment.rs:2096:12
[INFO] [stdout]      |
[INFO] [stdout] 2096 |         for i in 0..timer_ticks {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/wire.rs:644:43
[INFO] [stdout]     |
[INFO] [stdout] 644 |         assert_eq!(payload_bytes, &ENCODED_PONG[type_length..]);
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/functional_tests.rs:679:23
[INFO] [stdout]     |
[INFO] [stdout] 679 |         let commitment_tx = get_local_commitment_txn!(nodes[1], channel_id)[0].clone();
[INFO] [stdout]     |                             ----------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:1135:11
[INFO] [stdout]      |
[INFO] [stdout] 1135 |     for _ in 0..50 {
[INFO] [stdout]      |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:1293:19
[INFO] [stdout]      |
[INFO] [stdout] 1293 |     let remote_txn = get_local_commitment_txn!(nodes[1], chan_1.2);
[INFO] [stdout]      |                      --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:1560:11
[INFO] [stdout]      |
[INFO] [stdout] 1560 |     for _ in 0..MIN_AFFORDABLE_HTLC_COUNT {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:1590:11
[INFO] [stdout]      |
[INFO] [stdout] 1590 |     for _ in 0..MIN_AFFORDABLE_HTLC_COUNT {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:1655:11
[INFO] [stdout]      |
[INFO] [stdout] 1655 |     for _ in 0..MIN_AFFORDABLE_HTLC_COUNT {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:2451:26
[INFO] [stdout]      |
[INFO] [stdout] 2451 |     let revoked_local_txn = get_local_commitment_txn!(nodes[0], chan_5.2);
[INFO] [stdout]      |                             --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:2514:26
[INFO] [stdout]      |
[INFO] [stdout] 2514 |     let revoked_local_txn = get_local_commitment_txn!(nodes[1], chan_6.2);
[INFO] [stdout]      |                             --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:2557:26
[INFO] [stdout]      |
[INFO] [stdout] 2557 |     let revoked_local_txn = get_local_commitment_txn!(nodes[0], chan_1.2);
[INFO] [stdout]      |                             --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:2609:26
[INFO] [stdout]      |
[INFO] [stdout] 2609 |     let revoked_local_txn = get_local_commitment_txn!(nodes[0], channel_id);
[INFO] [stdout]      |                             ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:2632:16
[INFO] [stdout]      |
[INFO] [stdout] 2632 |     let monitor = get_monitor!(nodes[1], channel_id);
[INFO] [stdout]      |                   ---------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:2665:26
[INFO] [stdout]      |
[INFO] [stdout] 2665 |     let revoked_local_txn = get_local_commitment_txn!(nodes[0], chan_1.2);
[INFO] [stdout]      |                             --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:2732:26
[INFO] [stdout]      |
[INFO] [stdout] 2732 |     let revoked_local_txn = get_local_commitment_txn!(nodes[0], chan_1.2);
[INFO] [stdout]      |                             --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:2744:66
[INFO] [stdout]      |
[INFO] [stdout] 2744 |         expect_pending_htlcs_forwardable_from_events!(nodes[0], events[0..1], true);
[INFO] [stdout]      |                                                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:2837:22
[INFO] [stdout]      |
[INFO] [stdout] 2837 |     let commitment_tx = get_local_commitment_txn!(nodes[2], chan_2.2);
[INFO] [stdout]      |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:2966:29
[INFO] [stdout]      |
[INFO] [stdout] 2966 |     let node_a_commitment_tx = get_local_commitment_txn!(nodes[0], chan_1.2);
[INFO] [stdout]      |                                --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:3057:22
[INFO] [stdout]      |
[INFO] [stdout] 3057 |     let commitment_tx = get_local_commitment_txn!(nodes[2], chan_2.2);
[INFO] [stdout]      |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:3123:22
[INFO] [stdout]      |
[INFO] [stdout] 3123 |     let commitment_tx = get_local_commitment_txn!(nodes[1], chan_1.2);
[INFO] [stdout]      |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:3161:26
[INFO] [stdout]      |
[INFO] [stdout] 3161 |     let revoked_local_txn = get_local_commitment_txn!(nodes[2], chan_2.2);
[INFO] [stdout]      |                             --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:3220:26
[INFO] [stdout]      |
[INFO] [stdout] 3220 |     let revoked_local_txn = get_local_commitment_txn!(nodes[2], chan_2.2);
[INFO] [stdout]      |                             --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:3642:3
[INFO] [stdout]      |
[INFO] [stdout] 3642 |         get_monitor!(nodes[2], payment_event.commitment_msg.channel_id)
[INFO] [stdout]      |         --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:4360:11
[INFO] [stdout]      |
[INFO] [stdout] 4360 |     for _ in CHAN_CONFIRM_DEPTH + 2..block_count {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:4552:26
[INFO] [stdout]      |
[INFO] [stdout] 4552 |     let revoked_local_txn = get_local_commitment_txn!(nodes[0], chan.2);
[INFO] [stdout]      |                             ------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:4585:22
[INFO] [stdout]      |
[INFO] [stdout] 4585 |     let commitment_tx = get_local_commitment_txn!(nodes[0], chan_1.2);
[INFO] [stdout]      |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:4635:22
[INFO] [stdout]      |
[INFO] [stdout] 4635 |     let commitment_tx = get_local_commitment_txn!(nodes[0], chan_1.2);
[INFO] [stdout]      |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:4678:26
[INFO] [stdout]      |
[INFO] [stdout] 4678 |     let revoked_local_txn = get_local_commitment_txn!(nodes[0], chan_1.2);
[INFO] [stdout]      |                             --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:4714:26
[INFO] [stdout]      |
[INFO] [stdout] 4714 |     let revoked_local_txn = get_local_commitment_txn!(nodes[0], chan_1.2);
[INFO] [stdout]      |                             --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:4779:26
[INFO] [stdout]      |
[INFO] [stdout] 4779 |     let revoked_local_txn = get_local_commitment_txn!(nodes[1], chan_1.2);
[INFO] [stdout]      |                             --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:4874:22
[INFO] [stdout]      |
[INFO] [stdout] 4874 |     let commitment_tx = get_local_commitment_txn!(nodes[2], chan_2.2);
[INFO] [stdout]      |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:4945:22
[INFO] [stdout]      |
[INFO] [stdout] 4945 |     let commitment_tx = get_local_commitment_txn!(nodes[0], chan_1.2);
[INFO] [stdout]      |                         --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:4997:23
[INFO] [stdout]      |
[INFO] [stdout] 4997 |     let commitment_txn = get_local_commitment_txn!(nodes[2], chan_2.2);
[INFO] [stdout]      |                          --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:5117:18
[INFO] [stdout]      |
[INFO] [stdout] 5117 |     let local_txn = get_local_commitment_txn!(nodes[1], chan_1.2);
[INFO] [stdout]      |                     --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:5191:13
[INFO] [stdout]      |
[INFO] [stdout] 5191 |     assert_eq!(get_local_commitment_txn!(nodes[3], chan_2_3.2)[0].output.len(), 2);
[INFO] [stdout]      |                ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:5229:13
[INFO] [stdout]      |
[INFO] [stdout] 5229 |     assert_eq!(get_local_commitment_txn!(nodes[3], chan_2_3.2).len(), 1);
[INFO] [stdout]      |                ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:5230:13
[INFO] [stdout]      |
[INFO] [stdout] 5230 |     assert_eq!(get_local_commitment_txn!(nodes[3], chan_2_3.2)[0].output.len(), 8);
[INFO] [stdout]      |                ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:5273:30
[INFO] [stdout]      |
[INFO] [stdout] 5273 |     let ds_prev_commitment_tx = get_local_commitment_txn!(nodes[3], chan_2_3.2);
[INFO] [stdout]      |                                 ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:5310:30
[INFO] [stdout]      |
[INFO] [stdout] 5310 |     let ds_last_commitment_tx = get_local_commitment_txn!(nodes[3], chan_2_3.2);
[INFO] [stdout]      |                                 ----------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:5333:66
[INFO] [stdout]      |
[INFO] [stdout] 5333 |         expect_pending_htlcs_forwardable_from_events!(nodes[2], events[0..1], true);
[INFO] [stdout]      |                                                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:5476:18
[INFO] [stdout]      |
[INFO] [stdout] 5476 |     let local_txn = get_local_commitment_txn!(nodes[0], chan_1.2);
[INFO] [stdout]      |                     --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:5551:20
[INFO] [stdout]      |
[INFO] [stdout] 5551 |     let local_txn_0 = get_local_commitment_txn!(nodes[0], chan_0.2);
[INFO] [stdout]      |                       --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:5552:20
[INFO] [stdout]      |
[INFO] [stdout] 5552 |     let local_txn_1 = get_local_commitment_txn!(nodes[0], chan_1.2);
[INFO] [stdout]      |                       --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:5557:121
[INFO] [stdout]      |
[INFO] [stdout] 5557 |     let (from_0_funding_key_0, from_0_funding_key_1) = (PublicKey::from_slice(&local_txn_0[0].input[0].witness.to_vec()[3][2..35]), Publi...
[INFO] [stdout]      |                                                                                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:5557:197
[INFO] [stdout]      |
[INFO] [stdout] 5557 | ...licKey::from_slice(&local_txn_0[0].input[0].witness.to_vec()[3][36..69]));
[INFO] [stdout]      |                                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:5558:121
[INFO] [stdout]      |
[INFO] [stdout] 5558 |     let (from_1_funding_key_0, from_1_funding_key_1) = (PublicKey::from_slice(&local_txn_1[0].input[0].witness.to_vec()[3][2..35]), Publi...
[INFO] [stdout]      |                                                                                                                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:5558:197
[INFO] [stdout]      |
[INFO] [stdout] 5558 | ...licKey::from_slice(&local_txn_1[0].input[0].witness.to_vec()[3][36..69]));
[INFO] [stdout]      |                                                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:5656:11
[INFO] [stdout]      |
[INFO] [stdout] 5656 |     for _ in starting_block.1 + 1..TEST_FINAL_CLTV - CLTV_CLAIM_BUFFER + starting_block.1 + 2 {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:5687:11
[INFO] [stdout]      |
[INFO] [stdout] 5687 |     for _ in starting_block.1 + 1..TEST_FINAL_CLTV + LATENCY_GRACE_PERIOD_BLOCKS + starting_block.1 + 2 {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:5732:11
[INFO] [stdout]      |
[INFO] [stdout] 5732 |     for _ in starting_block.1 + 1..TEST_FINAL_CLTV + LATENCY_GRACE_PERIOD_BLOCKS + CHAN_CONFIRM_DEPTH + 2 {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:6308:11
[INFO] [stdout]      |
[INFO] [stdout] 6308 |     for i in 0..max_accepted_htlcs {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:6461:11
[INFO] [stdout]      |
[INFO] [stdout] 6461 |     for i in 0..50 {
[INFO] [stdout]      |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:6988:30
[INFO] [stdout]      |
[INFO] [stdout] 6988 |     let as_prev_commitment_tx = get_local_commitment_txn!(nodes[0], chan.2);
[INFO] [stdout]      |                                 ------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:7002:30
[INFO] [stdout]      |
[INFO] [stdout] 7002 |     let as_last_commitment_tx = get_local_commitment_txn!(nodes[0], chan.2);
[INFO] [stdout]      |                                 ------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:7078:25
[INFO] [stdout]      |
[INFO] [stdout] 7078 |     let as_commitment_tx = get_local_commitment_txn!(nodes[0], chan.2);
[INFO] [stdout]      |                            ------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:7079:25
[INFO] [stdout]      |
[INFO] [stdout] 7079 |     let bs_commitment_tx = get_local_commitment_txn!(nodes[1], chan.2);
[INFO] [stdout]      |                            ------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:7298:11
[INFO] [stdout]      |
[INFO] [stdout] 7298 |     for _ in 0..DISABLE_GOSSIP_TICKS + 1 {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:7344:11
[INFO] [stdout]      |
[INFO] [stdout] 7344 |     for _ in 0..ENABLE_GOSSIP_TICKS {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:7387:20
[INFO] [stdout]      |
[INFO] [stdout] 7387 |     let revoked_txn = get_local_commitment_txn!(nodes[0], chan.2);
[INFO] [stdout]      |                       ------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:7501:26
[INFO] [stdout]      |
[INFO] [stdout] 7501 |     let revoked_local_txn = get_local_commitment_txn!(nodes[1], chan.2);
[INFO] [stdout]      |                             ------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:7538:65
[INFO] [stdout]      |
[INFO] [stdout] 7538 |     expect_pending_htlcs_forwardable_from_events!(nodes[0], events[0..1], true);
[INFO] [stdout]      |                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:7648:19
[INFO] [stdout]      |
[INFO] [stdout] 7648 |     let remote_txn = get_local_commitment_txn!(nodes[0], chan.2);
[INFO] [stdout]      |                      ------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:7801:26
[INFO] [stdout]      |
[INFO] [stdout] 7801 |     let revoked_local_txn = get_local_commitment_txn!(nodes[1], chan.2);
[INFO] [stdout]      |                             ------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:8232:11
[INFO] [stdout]      |
[INFO] [stdout] 8232 |     for i in 0..routing_node_count {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:8247:11
[INFO] [stdout]      |
[INFO] [stdout] 8247 |     for i in 0..routing_node_count {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:8679:18
[INFO] [stdout]      |
[INFO] [stdout] 8679 |     let local_txn = get_local_commitment_txn!(nodes[0], chan_1.2);
[INFO] [stdout]      |                     --------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:8737:18
[INFO] [stdout]      |
[INFO] [stdout] 8737 |     let alice_txn = get_local_commitment_txn!(nodes[0], chan_ab.2);
[INFO] [stdout]      |                     ---------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:8762:13
[INFO] [stdout]      |
[INFO] [stdout] 8762 |             false => get_local_commitment_txn!(nodes[1], chan_ab.2)
[INFO] [stdout]      |                      ---------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/functional_tests.rs:8842:43
[INFO] [stdout]      |
[INFO] [stdout] 8842 |     if !broadcast_alice { txn_to_broadcast = get_local_commitment_txn!(nodes[1], chan_ab.2); }
[INFO] [stdout]      |                                              ---------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:9758:13
[INFO] [stdout]      |
[INFO] [stdout] 9758 |             for _ in 0..dust_outbound_htlc_on_holder_tx {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:9767:13
[INFO] [stdout]      |
[INFO] [stdout] 9767 |             for _ in 0..dust_inbound_htlc_on_holder_tx {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:9775:13
[INFO] [stdout]      |
[INFO] [stdout] 9775 |             for _ in 0..dust_htlc_on_counterparty_tx - 1 {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:9783:13
[INFO] [stdout]      |
[INFO] [stdout] 9783 |             for _ in 0..dust_htlc_on_counterparty_tx - 1 {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_tests.rs:9829:12
[INFO] [stdout]      |
[INFO] [stdout] 9829 |         for _ in 0..20 {
[INFO] [stdout]      |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/functional_tests.rs:10117:12
[INFO] [stdout]       |
[INFO] [stdout] 10117 |         for _ in 0..DISCONNECT_PEER_AWAITING_RESPONSE_TICKS - 1 {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/functional_tests.rs:10191:11
[INFO] [stdout]       |
[INFO] [stdout] 10191 |     for _ in 0..DISCONNECT_PEER_AWAITING_RESPONSE_TICKS {
[INFO] [stdout]       |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/functional_tests.rs:10207:12
[INFO] [stdout]       |
[INFO] [stdout] 10207 |         for _ in 0..DISCONNECT_PEER_AWAITING_RESPONSE_TICKS {
[INFO] [stdout]       |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/functional_tests.rs:10245:11
[INFO] [stdout]       |
[INFO] [stdout] 10245 |     for _ in 0..UNFUNDED_CHANNEL_AGE_LIMIT_TICKS - 1 {
[INFO] [stdout]       |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/functional_tests.rs:10296:11
[INFO] [stdout]       |
[INFO] [stdout] 10296 |     for _ in 0..UNFUNDED_CHANNEL_AGE_LIMIT_TICKS - 1 {
[INFO] [stdout]       |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]       |
[INFO] [stdout] 874   |             for index in 0..2 {
[INFO] [stdout]       |                          ^^^^
[INFO] [stdout]       |
[INFO] [stdout]      ::: src/ln/functional_tests.rs:10369:35
[INFO] [stdout]       |
[INFO] [stdout] 10369 |         let chan_0_monitor_serialized = get_monitor!(nodes[0], chan_id).encode();
[INFO] [stdout]       |                                         ------------------------------- in this macro invocation
[INFO] [stdout]       |
[INFO] [stdout]       = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]      --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]       |
[INFO] [stdout] 874   |             for index in 0..2 {
[INFO] [stdout]       |                          ^^^^
[INFO] [stdout]       |
[INFO] [stdout]      ::: src/ln/functional_tests.rs:10370:35
[INFO] [stdout]       |
[INFO] [stdout] 10370 |         let chan_1_monitor_serialized = get_monitor!(nodes[0], chan_id_2).encode();
[INFO] [stdout]       |                                         --------------------------------- in this macro invocation
[INFO] [stdout]       |
[INFO] [stdout]       = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/payment_tests.rs:315:12
[INFO] [stdout]     |
[INFO] [stdout] 315 |         for _ in 0..MPP_TIMEOUT_TICKS {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/payment_tests.rs:342:12
[INFO] [stdout]     |
[INFO] [stdout] 342 |         for _ in 0..MPP_TIMEOUT_TICKS {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/payment_tests.rs:670:25
[INFO] [stdout]     |
[INFO] [stdout] 670 |     let as_commitment_tx = get_local_commitment_txn!(nodes[0], chan_id)[0].clone();
[INFO] [stdout]     |                            -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/payment_tests.rs:678:34
[INFO] [stdout]     |
[INFO] [stdout] 678 |     let chan_0_monitor_serialized = get_monitor!(nodes[0], chan_id).encode();
[INFO] [stdout]     |                                     ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/payment_tests.rs:793:11
[INFO] [stdout]     |
[INFO] [stdout] 793 |     for _ in 0..EXPIRE_PREV_CONFIG_TICKS {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/payment_tests.rs:858:34
[INFO] [stdout]     |
[INFO] [stdout] 858 |     let chan_0_monitor_serialized = get_monitor!(nodes[0], chan_id).encode();
[INFO] [stdout]     |                                     ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/payment_tests.rs:954:34
[INFO] [stdout]     |
[INFO] [stdout] 954 |     let chan_0_monitor_serialized = get_monitor!(nodes[0], chan_id).encode();
[INFO] [stdout]     |                                     ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/payment_tests.rs:955:34
[INFO] [stdout]     |
[INFO] [stdout] 955 |     let chan_1_monitor_serialized = get_monitor!(nodes[0], chan_id_3).encode();
[INFO] [stdout]     |                                     --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/payment_tests.rs:987:34
[INFO] [stdout]     |
[INFO] [stdout] 987 |     let chan_0_monitor_serialized = get_monitor!(nodes[0], chan_id).encode();
[INFO] [stdout]     |                                     ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/payment_tests.rs:988:34
[INFO] [stdout]     |
[INFO] [stdout] 988 |     let chan_1_monitor_serialized = get_monitor!(nodes[0], chan_id_3).encode();
[INFO] [stdout]     |                                     --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/payment_tests.rs:1111:34
[INFO] [stdout]      |
[INFO] [stdout] 1111 |     let chan_0_monitor_serialized = get_monitor!(nodes[0], chan_id).encode();
[INFO] [stdout]      |                                     ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/payment_tests.rs:1179:34
[INFO] [stdout]      |
[INFO] [stdout] 1179 |     let chan_0_monitor_serialized = get_monitor!(nodes[1], chan_id).encode();
[INFO] [stdout]      |                                     ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/payment_tests.rs:1404:15
[INFO] [stdout]      |
[INFO] [stdout] 1404 |     let bs_txn = get_local_commitment_txn!(nodes[1], chan_id);
[INFO] [stdout]      |                  -------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:1565:11
[INFO] [stdout]      |
[INFO] [stdout] 1565 |     for _ in 0..=IDEMPOTENCY_TIMEOUT_TICKS {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:1586:11
[INFO] [stdout]      |
[INFO] [stdout] 1586 |     for _ in 0..IDEMPOTENCY_TIMEOUT_TICKS {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:1640:11
[INFO] [stdout]      |
[INFO] [stdout] 1640 |     for _ in 0..=IDEMPOTENCY_TIMEOUT_TICKS {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:1710:11
[INFO] [stdout]      |
[INFO] [stdout] 1710 |     for _ in 0..=IDEMPOTENCY_TIMEOUT_TICKS {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:1751:11
[INFO] [stdout]      |
[INFO] [stdout] 1751 |     for _ in 0..=IDEMPOTENCY_TIMEOUT_TICKS {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:1986:12
[INFO] [stdout]      |
[INFO] [stdout] 1986 |         for _ in 0..TEST_FINAL_CLTV {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:2030:11
[INFO] [stdout]      |
[INFO] [stdout] 2030 |     for _ in 0..num_mpp_parts {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:2040:11
[INFO] [stdout]      |
[INFO] [stdout] 2040 |     for _ in 0..num_mpp_parts {
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:2126:11
[INFO] [stdout]      |
[INFO] [stdout] 2126 |     for _ in 0..num_mpp_parts { expected_paths_vecs.push(vec!(&nodes[1], &nodes[2])); }
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:2127:11
[INFO] [stdout]      |
[INFO] [stdout] 2127 |     for i in 0..num_mpp_parts { expected_paths.push(&expected_paths_vecs[i][..]); }
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/payment_tests.rs:2330:35
[INFO] [stdout]      |
[INFO] [stdout] 2330 |         let chan_1_monitor_serialized = get_monitor!(nodes[0], channel_id_1).encode();
[INFO] [stdout]      |                                         ------------------------------------ in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:3338:11
[INFO] [stdout]      |
[INFO] [stdout] 3338 |     for _ in 0..16 { threads.push(std::thread::spawn(thread_body!())); }
[INFO] [stdout]      |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/payment_tests.rs:3438:34
[INFO] [stdout]      |
[INFO] [stdout] 3438 |     let chan_0_monitor_serialized = get_monitor!(nodes[0], chan_id).encode();
[INFO] [stdout]      |                                     ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:3456:11
[INFO] [stdout]      |
[INFO] [stdout] 3456 |     for _ in 0..(IDEMPOTENCY_TIMEOUT_TICKS * 2) { nodes[0].node.timer_tick_occurred(); }
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/payment_tests.rs:3458:34
[INFO] [stdout]      |
[INFO] [stdout] 3458 |     let chan_0_monitor_serialized = get_monitor!(nodes[0], chan_id).encode();
[INFO] [stdout]      |                                     ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/payment_tests.rs:3466:11
[INFO] [stdout]      |
[INFO] [stdout] 3466 |     for _ in 0..(IDEMPOTENCY_TIMEOUT_TICKS * 2) { nodes[0].node.timer_tick_occurred(); }
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/payment_tests.rs:3471:34
[INFO] [stdout]      |
[INFO] [stdout] 3471 |     let chan_0_monitor_serialized = get_monitor!(nodes[0], chan_id).encode();
[INFO] [stdout]      |                                     ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/payment_tests.rs:4037:16
[INFO] [stdout]      |
[INFO] [stdout] 4037 |         let mon_bd = get_monitor!(nodes[3], chan_id_bd).encode();
[INFO] [stdout]      |                      ---------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/payment_tests.rs:4038:16
[INFO] [stdout]      |
[INFO] [stdout] 4038 |         let mon_cd = get_monitor!(nodes[3], chan_id_cd).encode();
[INFO] [stdout]      |                      ---------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/priv_short_conf_tests.rs:98:29
[INFO] [stdout]     |
[INFO] [stdout] 98  |     let monitor_a_serialized = get_monitor!(nodes[1], chan_id_1).encode();
[INFO] [stdout]     |                                --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/priv_short_conf_tests.rs:99:29
[INFO] [stdout]     |
[INFO] [stdout] 99  |     let monitor_b_serialized = get_monitor!(nodes[1], chan_id_2).encode();
[INFO] [stdout]     |                                --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/chanmon_update_fail_tests.rs:2145:15
[INFO] [stdout]      |
[INFO] [stdout] 2145 |     let bs_txn = get_local_commitment_txn!(nodes[2], chan_id_2);
[INFO] [stdout]      |                  ---------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/chanmon_update_fail_tests.rs:2321:34
[INFO] [stdout]      |
[INFO] [stdout] 2321 |     let chan_0_monitor_serialized = get_monitor!(nodes[0], chan_id).encode();
[INFO] [stdout]      |                                     ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/chanmon_update_fail_tests.rs:2972:10
[INFO] [stdout]      |
[INFO] [stdout] 2972 |     assert!(get_monitor!(nodes[1], chan_id_2).get_stored_preimages().contains_key(&payment_hash_2));
[INFO] [stdout]      |             --------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/chanmon_update_fail_tests.rs:3033:15
[INFO] [stdout]      |
[INFO] [stdout] 3033 |     let mon_ab = get_monitor!(nodes[1], chan_id_ab).encode();
[INFO] [stdout]      |                  ---------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/chanmon_update_fail_tests.rs:3078:15
[INFO] [stdout]      |
[INFO] [stdout] 3078 |     let mon_bc = get_monitor!(nodes[1], chan_id_bc).encode();
[INFO] [stdout]      |                  ---------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/chanmon_update_fail_tests.rs:3201:15
[INFO] [stdout]      |
[INFO] [stdout] 3201 |     let mon_ab = get_monitor!(nodes[1], chan_id_ab).encode();
[INFO] [stdout]      |                  ---------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/chanmon_update_fail_tests.rs:3223:15
[INFO] [stdout]      |
[INFO] [stdout] 3223 |     let mon_bc = get_monitor!(nodes[1], chan_id_bc).encode();
[INFO] [stdout]      |                  ---------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/chanmon_update_fail_tests.rs:3271:12
[INFO] [stdout]      |
[INFO] [stdout] 3271 |         for _ in 0..mons_added {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/chanmon_update_fail_tests.rs:3388:15
[INFO] [stdout]      |
[INFO] [stdout] 3388 |     let mon_ab = get_monitor!(nodes[1], chan_id_ab).encode();
[INFO] [stdout]      |                  ---------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/chanmon_update_fail_tests.rs:3389:15
[INFO] [stdout]      |
[INFO] [stdout] 3389 |     let mon_bc = get_monitor!(nodes[1], chan_id_bc).encode();
[INFO] [stdout]      |                  ---------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reorg_tests.rs:69:31
[INFO] [stdout]     |
[INFO] [stdout] 69  |         let node_1_commitment_txn = get_local_commitment_txn!(nodes[1], chan_2.2);
[INFO] [stdout]     |                                     --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reorg_tests.rs:93:35
[INFO] [stdout]     |
[INFO] [stdout] 93  |         let mut node_2_commitment_txn = get_local_commitment_txn!(nodes[2], chan_2.2);
[INFO] [stdout]     |                                         --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reorg_tests.rs:184:26
[INFO] [stdout]     |
[INFO] [stdout] 184 |     let revoked_local_txn = get_local_commitment_txn!(nodes[0], chan.2);
[INFO] [stdout]     |                             ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reorg_tests.rs:198:32
[INFO] [stdout]     |
[INFO] [stdout] 198 |     let mut unrevoked_local_txn = get_local_commitment_txn!(nodes[0], chan.2);
[INFO] [stdout]     |                                   ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reorg_tests.rs:308:35
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let chan_0_monitor_serialized = get_monitor!(nodes[0], chan.2).encode();
[INFO] [stdout]     |                                         ------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reorg_tests.rs:431:19
[INFO] [stdout]     |
[INFO] [stdout] 431 |     let remote_txn = get_local_commitment_txn!(nodes[1], chan.2);
[INFO] [stdout]     |                      ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reorg_tests.rs:534:21
[INFO] [stdout]     |
[INFO] [stdout] 534 |     let remote_txn_a = get_local_commitment_txn!(nodes[0], chan_id);
[INFO] [stdout]     |                        -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reorg_tests.rs:535:21
[INFO] [stdout]     |
[INFO] [stdout] 535 |     let remote_txn_b = get_local_commitment_txn!(nodes[1], chan_id);
[INFO] [stdout]     |                        -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reorg_tests.rs:670:2
[INFO] [stdout]     |
[INFO] [stdout] 670 |     get_monitor!(nodes[1], chan_id).provide_payment_preimage(
[INFO] [stdout]     |     ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reorg_tests.rs:698:27
[INFO] [stdout]     |
[INFO] [stdout] 698 |     let prev_commitment_a = &get_local_commitment_txn!(nodes[0], chan_id)[0];
[INFO] [stdout]     |                              -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reorg_tests.rs:744:2
[INFO] [stdout]     |
[INFO] [stdout] 744 |     get_monitor!(nodes[1], chan_id).provide_payment_preimage(
[INFO] [stdout]     |     ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:182:34
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let chan_0_monitor_serialized = get_monitor!(nodes[0], chan_id).encode();
[INFO] [stdout]     |                                     ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:205:3
[INFO] [stdout]     |
[INFO] [stdout] 205 |         get_monitor!(nodes[0], OutPoint { txid: tx.txid(), index: 0 }.to_channel_id()).encode();
[INFO] [stdout]     |         ------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:284:34
[INFO] [stdout]     |
[INFO] [stdout] 284 |     let chan_0_monitor_serialized = get_monitor!(nodes[0], bs_funding_signed.channel_id).encode();
[INFO] [stdout]     |                                     ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:340:34
[INFO] [stdout]     |
[INFO] [stdout] 340 |     let chan_0_monitor_serialized = get_monitor!(nodes[0], chan_id).encode();
[INFO] [stdout]     |                                     ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:370:3
[INFO] [stdout]     |
[INFO] [stdout] 370 |         get_monitor!(nodes[0], chan_id_iter).write(&mut writer).unwrap();
[INFO] [stdout]     |         ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:388:35
[INFO] [stdout]     |
[INFO] [stdout] 388 |         node_0_monitors_serialized.push(get_monitor!(nodes[0], chan_id_iter).encode());
[INFO] [stdout]     |                                         ------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:518:37
[INFO] [stdout]     |
[INFO] [stdout] 518 |     let previous_chain_monitor_state = get_monitor!(nodes[0], chan.2).encode();
[INFO] [stdout]     |                                        ------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:674:34
[INFO] [stdout]     |
[INFO] [stdout] 674 |     let chan_0_monitor_serialized = get_monitor!(nodes[1], chan_id_1).encode();
[INFO] [stdout]     |                                     --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:675:34
[INFO] [stdout]     |
[INFO] [stdout] 675 |     let chan_1_monitor_serialized = get_monitor!(nodes[1], chan_id_2).encode();
[INFO] [stdout]     |                                     --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:797:10
[INFO] [stdout]     |
[INFO] [stdout] 797 |     assert!(get_monitor!(nodes[3], chan_id_persisted).get_stored_preimages().contains_key(&payment_hash));
[INFO] [stdout]     |             ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:798:10
[INFO] [stdout]     |
[INFO] [stdout] 798 |     assert!(get_monitor!(nodes[3], chan_id_not_persisted).get_stored_preimages().contains_key(&payment_hash));
[INFO] [stdout]     |             --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:942:3
[INFO] [stdout]     |
[INFO] [stdout] 942 |         get_monitor!(nodes[2], chan_id_2).provide_payment_preimage(&payment_hash, &payment_preimage,
[INFO] [stdout]     |         --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:957:34
[INFO] [stdout]     |
[INFO] [stdout] 957 |     let chan_0_monitor_serialized = get_monitor!(nodes[1], chan_id_1).encode();
[INFO] [stdout]     |                                     --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/reload_tests.rs:958:34
[INFO] [stdout]     |
[INFO] [stdout] 958 |     let chan_1_monitor_serialized = get_monitor!(nodes[1], chan_id_2).encode();
[INFO] [stdout]     |                                     --------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/reload_tests.rs:1081:34
[INFO] [stdout]      |
[INFO] [stdout] 1081 |     let chan_0_monitor_serialized = get_monitor!(nodes[1], chan_id_1).encode();
[INFO] [stdout]      |                                     --------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/reload_tests.rs:1082:34
[INFO] [stdout]      |
[INFO] [stdout] 1082 |     let chan_1_monitor_serialized = get_monitor!(nodes[1], chan_id_2).encode();
[INFO] [stdout]      |                                     --------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/reload_tests.rs:1149:37
[INFO] [stdout]      |
[INFO] [stdout] 1149 |     let channel_monitor_1_serialized = get_monitor!(nodes[0], channel_id_1).encode();
[INFO] [stdout]      |                                        ------------------------------------ in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_route_tests.rs:599:12
[INFO] [stdout]     |
[INFO] [stdout] 599 |         for _ in 0..DISABLE_GOSSIP_TICKS + 1 {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/onion_route_tests.rs:641:44
[INFO] [stdout]     |
[INFO] [stdout] 641 |             hmac.input(&decoded_err_packet.encode()[32..]);
[INFO] [stdout]     |                                                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/onion_route_tests.rs:664:44
[INFO] [stdout]     |
[INFO] [stdout] 664 |             hmac.input(&decoded_err_packet.encode()[32..]);
[INFO] [stdout]     |                                                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/ln/onion_route_tests.rs:688:44
[INFO] [stdout]     |
[INFO] [stdout] 688 |             hmac.input(&decoded_err_packet.encode()[32..]);
[INFO] [stdout]     |                                                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/onion_route_tests.rs:803:12
[INFO] [stdout]     |
[INFO] [stdout] 803 |         for _ in 0..EXPIRE_PREV_CONFIG_TICKS {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/onion_route_tests.rs:902:35
[INFO] [stdout]     |
[INFO] [stdout] 902 |         let chan_1_monitor_serialized = get_monitor!(nodes[1], other_channel.3).encode();
[INFO] [stdout]     |                                         --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/onion_route_tests.rs:903:35
[INFO] [stdout]     |
[INFO] [stdout] 903 |         let chan_2_monitor_serialized = get_monitor!(nodes[1], channel_to_update.0).encode();
[INFO] [stdout]     |                                         ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/monitor_tests.rs:68:15
[INFO] [stdout]     |
[INFO] [stdout] 68  |     let bs_txn = get_local_commitment_txn!(nodes[1], chan_id_2);
[INFO] [stdout]     |                  ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/monitor_tests.rs:129:26
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let revoked_local_txn = get_local_commitment_txn!(nodes[0], chan.2);
[INFO] [stdout]     |                             ------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/monitor_tests.rs:234:10
[INFO] [stdout]     |
[INFO] [stdout] 234 |     assert!(get_monitor!(nodes[0], chan_id)
[INFO] [stdout]     |             ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/monitor_tests.rs:236:10
[INFO] [stdout]     |
[INFO] [stdout] 236 |     assert!(get_monitor!(nodes[1], chan_id)
[INFO] [stdout]     |             ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/monitor_tests.rs:249:3
[INFO] [stdout]     |
[INFO] [stdout] 249 |         get_monitor!(nodes[0], chan_id).get_spendable_outputs(&shutdown_tx[0], shutdown_tx_conf_height_a),
[INFO] [stdout]     |         ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/monitor_tests.rs:255:3
[INFO] [stdout]     |
[INFO] [stdout] 255 |         get_monitor!(nodes[1], chan_id).get_spendable_outputs(&shutdown_tx[0], shutdown_tx_conf_height_b),
[INFO] [stdout]     |         ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/monitor_tests.rs:344:19
[INFO] [stdout]     |
[INFO] [stdout] 344 |     let remote_txn = get_local_commitment_txn!(nodes[1], chan_id);
[INFO] [stdout]     |                      -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/monitor_tests.rs:837:10
[INFO] [stdout]     |
[INFO] [stdout] 837 |     assert!(get_monitor!(nodes[0], chan_id)
[INFO] [stdout]     |             ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/monitor_tests.rs:847:3
[INFO] [stdout]     |
[INFO] [stdout] 847 |         get_monitor!(nodes[0], chan_id).get_spendable_outputs(&commitment_tx, commitment_tx_conf_height_a),
[INFO] [stdout]     |         ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]     |
[INFO] [stdout] 874 |             for index in 0..2 {
[INFO] [stdout]     |                          ^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ln/monitor_tests.rs:929:15
[INFO] [stdout]     |
[INFO] [stdout] 929 |     let as_txn = get_local_commitment_txn!(nodes[0], chan_id);
[INFO] [stdout]     |                  -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:1151:23
[INFO] [stdout]      |
[INFO] [stdout] 1151 |     let as_revoked_txn = get_local_commitment_txn!(nodes[0], chan_id);
[INFO] [stdout]      |                          -------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ln/monitor_tests.rs:1336:63
[INFO] [stdout]      |
[INFO] [stdout] 1336 |     expect_payment_failed_conditions_event(payment_failed_events[2..].to_vec(),
[INFO] [stdout]      |                                                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:1409:26
[INFO] [stdout]      |
[INFO] [stdout] 1409 |     let revoked_local_txn = get_local_commitment_txn!(nodes[1], chan_id);
[INFO] [stdout]      |                             -------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:1720:2
[INFO] [stdout]      |
[INFO] [stdout] 1720 |     get_monitor!(nodes[0], chan_id).provide_payment_preimage(&claimed_payment_hash, &claimed_payment_preimage,
[INFO] [stdout]      |     ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:1724:23
[INFO] [stdout]      |
[INFO] [stdout] 1724 |     let as_revoked_txn = get_local_commitment_txn!(nodes[0], chan_id);
[INFO] [stdout]      |                          -------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:2068:23
[INFO] [stdout]      |
[INFO] [stdout] 2068 |     let commitment_txn = get_local_commitment_txn!(&nodes[0], &chan_id);
[INFO] [stdout]      |                          ---------------------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `$crate::get_monitor` which comes from the expansion of the macro `get_local_commitment_txn` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:2220:2
[INFO] [stdout]      |
[INFO] [stdout] 2220 |     get_monitor!(nodes[0], chan_id).provide_payment_preimage(
[INFO] [stdout]      |     ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:2224:2
[INFO] [stdout]      |
[INFO] [stdout] 2224 |     get_monitor!(nodes[1], chan_id).provide_payment_preimage(
[INFO] [stdout]      |     ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:2367:33
[INFO] [stdout]      |
[INFO] [stdout] 2367 |     let bob_serialized_monitor_a = get_monitor!(nodes[1], chan_a.2).encode();
[INFO] [stdout]      |                                    -------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:2368:33
[INFO] [stdout]      |
[INFO] [stdout] 2368 |     let bob_serialized_monitor_b = get_monitor!(nodes[1], chan_b.2).encode();
[INFO] [stdout]      |                                    -------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:2387:17
[INFO] [stdout]      |
[INFO] [stdout] 2387 |         let monitor = get_monitor!(nodes[1], chan_id);
[INFO] [stdout]      |                       ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:2653:2
[INFO] [stdout]      |
[INFO] [stdout] 2653 |     get_monitor!(nodes[1], chan_id).set_counterparty_payment_script(p2wpkh_script.clone());
[INFO] [stdout]      |     ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:2654:13
[INFO] [stdout]      |
[INFO] [stdout] 2654 |     assert_eq!(get_monitor!(nodes[1], chan_id).get_counterparty_payment_script(), p2wpkh_script);
[INFO] [stdout]      |                ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:2678:28
[INFO] [stdout]      |
[INFO] [stdout] 2678 |         let serialized_monitor = get_monitor!(nodes[1], chan_id).encode();
[INFO] [stdout]      |                                  ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:2682:28
[INFO] [stdout]      |
[INFO] [stdout] 2682 |         let serialized_monitor = get_monitor!(nodes[1], chan_id).encode();
[INFO] [stdout]      |                                  ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:2691:10
[INFO] [stdout]      |
[INFO] [stdout] 2691 |     assert!(get_monitor!(nodes[1], chan_id).get_counterparty_payment_script().is_v0_p2wsh());
[INFO] [stdout]      |             ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ln/functional_test_utils.rs:874:17
[INFO] [stdout]      |
[INFO] [stdout] 874  |             for index in 0..2 {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/ln/monitor_tests.rs:2701:17
[INFO] [stdout]      |
[INFO] [stdout] 2701 |         let outputs = get_monitor!(nodes[1], chan_id).get_spendable_outputs(&commitment_tx, commitment_tx_conf_height);
[INFO] [stdout]      |                       ------------------------------- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `get_monitor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/offer.rs:805:55
[INFO] [stdout]     |
[INFO] [stdout] 805 | pub(super) const OFFER_TYPES: core::ops::Range<u64> = 1..80;
[INFO] [stdout]     |                                                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/offers/invoice.rs:1084:52
[INFO] [stdout]      |
[INFO] [stdout] 1084 | tlv_stream!(InvoiceTlvStream, InvoiceTlvStreamRef, 160..240, {
[INFO] [stdout]      |                                                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/invoice_request.rs:795:65
[INFO] [stdout]     |
[INFO] [stdout] 795 | pub(super) const INVOICE_REQUEST_TYPES: core::ops::Range<u64> = 80..160;
[INFO] [stdout]     |                                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]   --> src/offers/merkle.rs:22:57
[INFO] [stdout]    |
[INFO] [stdout] 22 | const SIGNATURE_TYPES: core::ops::RangeInclusive<u64> = 240..=1000;
[INFO] [stdout]    |                                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:130:15
[INFO] [stdout]     |
[INFO] [stdout] 130 |     for level in 0.. {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:137:24
[INFO] [stdout]     |
[INFO] [stdout] 137 |         let left_branches = (0..num_leaves).step_by(step);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:138:25
[INFO] [stdout]     |
[INFO] [stdout] 138 |         let right_branches = (offset..num_leaves).step_by(step);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:222:42
[INFO] [stdout]     |
[INFO] [stdout] 222 |             let type_bytes = &self.data.get_ref()[start as usize..offset as usize];
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:228:38
[INFO] [stdout]     |
[INFO] [stdout] 228 |             let _value = &self.data.get_ref()[offset as usize..end as usize];
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:229:44
[INFO] [stdout]     |
[INFO] [stdout] 229 |             let record_bytes = &self.data.get_ref()[start as usize..end as usize];
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:379:65
[INFO] [stdout]     |
[INFO] [stdout] 379 |         let tlv_stream = TlvStream::new(&invoice_request.bytes).range(0..1)
[INFO] [stdout]     |                                                                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:380:56
[INFO] [stdout]     |
[INFO] [stdout] 380 |             .chain(TlvStream::new(&invoice_request.bytes).range(1..80))
[INFO] [stdout]     |                                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:381:56
[INFO] [stdout]     |
[INFO] [stdout] 381 |             .chain(TlvStream::new(&invoice_request.bytes).range(80..160))
[INFO] [stdout]     |                                                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/offers/merkle.rs:382:56
[INFO] [stdout]     |
[INFO] [stdout] 382 |             .chain(TlvStream::new(&invoice_request.bytes).range(160..240))
[INFO] [stdout]     |                                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/offers/payer.rs:31:48
[INFO] [stdout]    |
[INFO] [stdout] 31 | tlv_stream!(PayerTlvStream, PayerTlvStreamRef, 0..1, {
[INFO] [stdout]    |                                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/offers/signer.rs:247:13
[INFO] [stdout]     |
[INFO] [stdout] 247 |         &metadata[PaymentId::LENGTH..], expanded_key, iv_bytes, tlv_stream
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/offers/signer.rs:253:13
[INFO] [stdout]     |
[INFO] [stdout] 253 |         &metadata[PaymentId::LENGTH..], Hmac::from_engine(hmac), signing_pubkey, secp_ctx
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/offers/signer.rs:256:40
[INFO] [stdout]     |
[INFO] [stdout] 256 |     let nonce = Nonce::try_from(&metadata[PaymentId::LENGTH..][..Nonce::LENGTH]).unwrap();
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/offers/signer.rs:293:21
[INFO] [stdout]     |
[INFO] [stdout] 293 |     } else if metadata[Nonce::LENGTH..].len() == Sha256::LEN {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/offers/signer.rs:294:30
[INFO] [stdout]     |
[INFO] [stdout] 294 |         if fixed_time_eq(&metadata[Nonce::LENGTH..], &hmac.into_inner()) {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/utxo.rs:817:12
[INFO] [stdout]     |
[INFO] [stdout] 817 |         for i in 0..PendingChecks::MAX_PENDING_LOOKUPS {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/utxo.rs:847:12
[INFO] [stdout]     |
[INFO] [stdout] 847 |         for i in 0..PendingChecks::MAX_PENDING_LOOKUPS {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/routing/gossip.rs:460:39
[INFO] [stdout]     |
[INFO] [stdout] 460 |         for (_, ref chan) in channels.range(starting_point..) {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/gossip.rs:648:39
[INFO] [stdout]     |
[INFO] [stdout] 648 |         for (_, ref chan) in channels.range(inclusive_start_scid.unwrap()..exclusive_end_scid.unwrap()) {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/gossip.rs:1316:12
[INFO] [stdout]      |
[INFO] [stdout] 1316 |         for _ in 0..channels_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/gossip.rs:1323:12
[INFO] [stdout]      |
[INFO] [stdout] 1323 |         for _ in 0..nodes_count {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]     --> src/routing/gossip.rs:2998:16
[INFO] [stdout]      |
[INFO] [stdout] 2998 |         for block in 100000..=108001 {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]     --> src/routing/gossip.rs:3153:26
[INFO] [stdout]      |
[INFO] [stdout] 3153 |                     short_channel_ids: (100000..=107999)
[INFO] [stdout]      |                                         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]     --> src/routing/gossip.rs:3176:26
[INFO] [stdout]      |
[INFO] [stdout] 3176 |                     short_channel_ids: (100000..=107999)
[INFO] [stdout]      |                                         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeInclusive` range syntax
[INFO] [stdout]     --> src/routing/gossip.rs:3208:26
[INFO] [stdout]      |
[INFO] [stdout] 3208 |                     short_channel_ids: (100002..=108001)
[INFO] [stdout]      |                                         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/gossip.rs:3246:12
[INFO] [stdout]      |
[INFO] [stdout] 3246 |         for i in 0..events.len() {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/router.rs:400:16
[INFO] [stdout]     |
[INFO] [stdout] 400 |                         for _ in 0..idx {
[INFO] [stdout]     |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/router.rs:427:12
[INFO] [stdout]     |
[INFO] [stdout] 427 |         for _ in 0..path_count {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/router.rs:430:13
[INFO] [stdout]     |
[INFO] [stdout] 430 |             for _ in 0..hop_count {
[INFO] [stdout]     |                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/router.rs:924:12
[INFO] [stdout]     |
[INFO] [stdout] 924 |         for _ in 0..hop_count {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:1270:13
[INFO] [stdout]      |
[INFO] [stdout] 1270 |         for i in (0..self.hops.len()).rev() {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:2561:13
[INFO] [stdout]      |
[INFO] [stdout] 2561 |     for idx in 0..(selected_route.len() - 1) {
[INFO] [stdout]      |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:2686:21
[INFO] [stdout]      |
[INFO] [stdout] 2686 |         for random_hop in 0..random_walk_length {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:2772:13
[INFO] [stdout]      |
[INFO] [stdout] 2772 |             for i in 0..self.hop_ids.len() {
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:2799:11
[INFO] [stdout]      |
[INFO] [stdout] 2799 |     for i in 0..hops.len() {
[INFO] [stdout]      |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:6322:56
[INFO] [stdout]      |
[INFO] [stdout] 6322 |                 let victim = (u64::from_ne_bytes(random_seed_bytes[0..8].try_into().unwrap()) as usize)
[INFO] [stdout]      |                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/routing/router.rs:6427:49
[INFO] [stdout]      |
[INFO] [stdout] 6427 |             let observed_cltv_expiry_delta: u32 = p.hops[random_path_index..].iter().map(|h| h.cltv_expiry_delta).sum();
[INFO] [stdout]      |                                                          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:6987:12
[INFO] [stdout]      |
[INFO] [stdout] 6987 |         for i in 0..num_blinded_hops {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/router.rs:8034:12
[INFO] [stdout]      |
[INFO] [stdout] 8034 |         for _ in 0..route_count * 3 / 2 {
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/scoring.rs:1755:15
[INFO] [stdout]      |
[INFO] [stdout] 1755 |             for msb in 0..BITS {
[INFO] [stdout]      |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/scoring.rs:1756:14
[INFO] [stdout]      |
[INFO] [stdout] 1756 |                 for i in 0..LOWER_BITS_BOUND {
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/scoring.rs:1804:17
[INFO] [stdout]      |
[INFO] [stdout] 1804 |         for bucket in 0..32 {
[INFO] [stdout]      |                       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/scoring.rs:1824:13
[INFO] [stdout]      |
[INFO] [stdout] 1824 |             for i in 0..*width {
[INFO] [stdout]      |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/routing/scoring.rs:1875:14
[INFO] [stdout]      |
[INFO] [stdout] 1875 |                 for i in start..end {
[INFO] [stdout]      |                          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/routing/test_utils.rs:109:34
[INFO] [stdout]     |
[INFO] [stdout] 109 |     let privkeys: Vec<SecretKey> = (2..22).map(|i| {
[INFO] [stdout]     |                                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/sign/mod.rs:1544:43
[INFO] [stdout]      |
[INFO] [stdout] 1544 |         let chan_id = u64::from_be_bytes(params[0..8].try_into().unwrap());
[INFO] [stdout]      |                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/sign/mod.rs:1779:6
[INFO] [stdout]      |
[INFO] [stdout] 1779 |         id[0..4].copy_from_slice(&(child_idx as u32).to_be_bytes());
[INFO] [stdout]      |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/sign/mod.rs:1780:6
[INFO] [stdout]      |
[INFO] [stdout] 1780 |         id[4..8].copy_from_slice(&self.starting_time_nanos.to_be_bytes());
[INFO] [stdout]      |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/sign/mod.rs:1781:6
[INFO] [stdout]      |
[INFO] [stdout] 1781 |         id[8..16].copy_from_slice(&self.starting_time_secs.to_be_bytes());
[INFO] [stdout]      |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/sign/mod.rs:1782:6
[INFO] [stdout]      |
[INFO] [stdout] 1782 |         id[16..32].copy_from_slice(&user_channel_id.to_be_bytes());
[INFO] [stdout]      |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/onion_message/functional_tests.rs:158:11
[INFO] [stdout]     |
[INFO] [stdout] 158 |     for i in 0..num_messengers {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/onion_message/functional_tests.rs:174:13
[INFO] [stdout]     |
[INFO] [stdout] 174 |     for idx in 0..num_messengers - 1 {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/onion_message/functional_tests.rs:412:11
[INFO] [stdout]     |
[INFO] [stdout] 412 |     for _ in 0..188 { // Based on MAX_PER_PEER_BUFFER_SIZE in OnionMessenger
[INFO] [stdout]     |              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/onion_message/functional_tests.rs:428:11
[INFO] [stdout]     |
[INFO] [stdout] 428 |     for i in 1..(num_nodes-1) {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/onion_message/functional_tests.rs:464:13
[INFO] [stdout]     |
[INFO] [stdout] 464 |     for idx in 0..nodes.len() - 1 {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/blinded_path/mod.rs:146:12
[INFO] [stdout]     |
[INFO] [stdout] 146 |         for _ in 0..num_hops {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `lightning` (lib test); 611 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/b4fc5dbf0bc33be331f9d893db5b3a794f29724a/bin/rustc --crate-name lightning --edition=2018 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 --test --cfg 'feature="default"' --cfg 'feature="grind_signatures"' --cfg 'feature="std"' -C metadata=42284c1873b1e07d -C extra-filename=-42284c1873b1e07d --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern bitcoin=/opt/rustwide/target/debug/deps/libbitcoin-f3447666c24a5cd9.rmeta --extern hex=/opt/rustwide/target/debug/deps/libhex-4993bc98e929487d.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-39f6c510d972be27.rmeta --cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds -L native=/opt/rustwide/target/debug/build/bitcoinconsensus-492dfb5b76ae0253/out -L native=/opt/rustwide/target/debug/build/secp256k1-sys-00596944a7741719/out` (signal: 9, SIGKILL: kill)
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `lightning` (lib); 267 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/b4fc5dbf0bc33be331f9d893db5b3a794f29724a/bin/rustc --crate-name lightning --edition=2018 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 --cfg 'feature="default"' --cfg 'feature="grind_signatures"' --cfg 'feature="std"' -C metadata=63739db4ed3642f6 -C extra-filename=-63739db4ed3642f6 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern bitcoin=/opt/rustwide/target/debug/deps/libbitcoin-f3447666c24a5cd9.rmeta --cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds -L native=/opt/rustwide/target/debug/build/bitcoinconsensus-492dfb5b76ae0253/out -L native=/opt/rustwide/target/debug/build/secp256k1-sys-00596944a7741719/out` (signal: 9, SIGKILL: kill)
[INFO] running `Command { std: "docker" "inspect" "c941d8def54715b2b9e937306cf86e862b924e43ca7114b81d3ce3ed32b29458", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c941d8def54715b2b9e937306cf86e862b924e43ca7114b81d3ce3ed32b29458", kill_on_drop: false }`
[INFO] [stdout] c941d8def54715b2b9e937306cf86e862b924e43ca7114b81d3ce3ed32b29458
